⭐️前面的话⭐️
本篇文章将介绍网络层和数据链路层的协议——IP协议与以太网,包括协议的格式,以及协议中每个字段的作用。
📒博客主页:未见花闻的博客主页
🎉欢迎关注🔎点赞👍收藏⭐️留言📝
📌本文由未见花闻原创,CSDN首发!
📆首发时间:🌴2022年5月5日🌴
✉️坚持和努力一定能换来诗与远方!
💭参考书籍:📚《图解TCP/IP》,📚《计算机网络》
💬参考在线编程网站:🌐牛客网🌐力扣
博主的码云gitee,平常博主写的程序代码都在里面。
博主的github,平常博主写的程序代码都在里面。
🍭作者水平很有限,如果发现错误,一定要及时告知作者哦!感谢感谢!
🍒1.IP协议
🍇1.1IP协议格式
IP是网络层传输的一种主流的传输协议,目前包括两个版本,一个是IPv4,另一个是IPv6,从全球范围来看IPv4仍然占据主流地位,不过在国内IPv6基本上部署的差不多了。
下面关于IP协议格式的介绍以IPv4为主。
🍉1.1.1IPv4格式
IPv4协议格式如下:
版本(4位):用来描述IP协议的版本,0100
表示版本为4
,即IPv4,如果版本为0111
表示版本为6
,即IPv6。
首部长度(4位):表示IP协议首部的长度,单位是4字节,因此IP协议首部最大长度为15*4=60
字节。
服务类型TOS(8位):实际只有4位是有效的,TOS用来切换IP传输的状态,TOS有效的4位分别表示最小延时,最大吞吐量,最高可靠性,最小成本,这四种状态,在同一时间传输时,只能选择一种。
数据总长度(16位):与UDP中表示的最大报文长度类似,表示数据载荷的最大长度,最大长度不超过16位,即64k,如果数据大小超过64k了,则需要对数据进行分包发送,虽然分包是下策,但是IP协议自身已经实现了有关分包组包的操作,保证组包后数据的顺序不被打乱,实现有关分包组包字段为16位标识,3位标志,13位片偏移。
标识(16位):其实相当于“快递编号”,如果一个快递太大了需要分开发送,那么分开发送的这几个包裹的“