计算机网络(2) 网络层:IP服务模型

一.Internet Protocol在TCP/IP四层模型中的作用

第三层网络层负责数据包从哪里来到哪里去的问题 。传输层的数据段提交给网络层后,网络层负责添加IP段,包含数据包源地址与目的地址 。将添加IP段的数据包交由数据链路层添加链路头形成最终在各节点传输中所需要的数据帧。 (在网络层必须使用IP模型)

IP服务模型的四个特点:

1.IP服务是一种数据报 :它是一种独立的数据报服务,通过路由一跳一跳进行转发,各个数据报之间互相独立没有特殊联系。它蕴含了IPSA(IP Source Addr)源地址与IPDA(IP Dest Addr)目的地址 。路由表中并不清除传输一个IP数据报的确定路径,只是通过不断检索IPDA去逐跳转发数据报,最终到达目的地址,可以类比如邮政服务

2.不可靠的服务:IP服务是不可靠的服务,因为它不负责准确无误的交付数据报。数据报可能会延迟交付甚至不交付。IP服务不会承诺将一个数据报准确无误的送达目的地址,故而数据报有丢失可能。(这样设计是为了使IP服务变得结构简单,可靠性通过传输层的TCP等协议控制)

3.如果必要可能会放弃一部分数据报,当中间节点路由器存在拥塞等情况,可能会丢弃一部分数据源报,且不会通知源地址。

4.无连接的:**TCP数据报不传递网络连接状态的任何信息,**故而一定是无连接的,它只是包含IP头的数据报仅此而已。

IP服务的一些细节:

1.IP服务会阻止包在路由中的死循环,通过在IP头中设置TTL(Time to live)段实现。经过一次转发TTL减少1,当TTL为0停止转发。

2.如果数据报文过长IP服务会对报文进行分割,例如以太网传输报文小于1500字节,大于1500字节时会进行分割。

3.IP服务使用IP头校验确保数据报的完整性。

4.目前有两种IP地址格式IPV4(32bits)与IPV6(128bits)。

IPV4数据报抽象格式如下图所示:

1.Version(版本):表示数据报版本IPV4或IPV6

2.Header Length(头长度):进行IP头校验

3.Type of Service:告诉路由器数据报类型(重要程度)

4.Total Packet Length:数据报总长度

5.Packet ID\Flags\Fragment Offset:数据报的ID以及一些标志位,主要用于大数据报分割

6.TTL:生存时间用于避免报文路由死循环。

7.Protocol ID:确定协议格式如TCP或UDP有上百种协议ID

8.IPDA/IPSA:目的地址\源地址

9.OPTIONS:IP服务允许在头部添加一些自定义部分,但是路由器也必须有相应的解析处理功能(一般不使用)

10.DATA:数据段

相关推荐
啟明起鸣12 分钟前
【网络编程】从与 TCP 服务器的对比中探讨出 UDP 协议服务器的并发方案(C 语言)
服务器·c语言·开发语言·网络·tcp/ip·udp
九章云极AladdinEdu33 分钟前
深度学习优化器进化史:从SGD到AdamW的原理与选择
linux·服务器·开发语言·网络·人工智能·深度学习·gpu算力
哈哈很哈哈42 分钟前
构建高性能网络应用
网络
emojiwoo1 小时前
HTTP 状态码背后的逻辑:从请求到响应的完整流程解析(含完整流程图)
网络·网络协议·http
番薯大佬1 小时前
Python学习-day9 字典Dictionary
网络·python·学习
渡我白衣2 小时前
Linux网络:应用层协议http
linux·网络·http
KKKlucifer2 小时前
国家网络安全通报中心:重点防范境外恶意网址和恶意 IP
tcp/ip·安全·web安全
pofenx2 小时前
使用nps创建隧道,进行内网穿透
linux·网络·内网穿透·nps
wanhengidc2 小时前
手机云服务是什么意思?
运维·网络·安全·游戏·智能手机
GilgameshJSS2 小时前
【学习K230-例程19】GT6700-TCP-Client
网络·python·网络协议·学习·tcp/ip