加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

普通易懂收集协议(IP)

发布时间:2019-06-19 20:39:44 所属栏目:教程 来源:我不想种地
导读:之前写过一篇《普通易懂TCP/IP(概述)》,广受接待和洽评,有网友催更,便抽闲续写IP章节,回应粉丝等候。 TCP/IP收集模子 TCP/IP收集模子分为4层,自下而上漫衍为链路层(又叫收集接口层)、收集层、传输层、应用层。 链路层:处理赏罚数据在前言上的暗示、传输

Socket抽象层位于应用层跟传输层之间,提供建设、绑定、监听、毗连、发送、吸取、封锁等常用要领。

普通易懂收集协议(IP)

Internet协议

IP是TCP/IP协议族中的焦点协议,为传输层提供IP数据报的交付手段,它认真将IP数据报从收集一端转达到另一端,实现数据转发。

IP的另一个浸染是:在发送端,吸取来自传输层的协议数据单位(PDU),添加IP首部封装为IP数据报,交给协议族的下一层链路层。

在吸取端(包罗中间路由器),吸取来自链路层的PDU,去掉IP首部,按照IP首部中的协议范例,将数据分发给TCP、UDP可能其他。

IP只是完因素组互换(转发),假如你但愿获得靠得住性担保,IP会说:对不起,做不了。

发送一个IP数据报如同寄一个快递,只需把目标地收件人写在快递上,快递公司会路由分发,但中间有也许丢件,丢了不管,并且到了,也不会有确认,统统随缘。

基于TCP/IP协议族构建的收集,可以区分为端体系(双方的主机)和中间体系(中间路由器),端主机实现收集全部层,而路由器实现传输层之下的全部层,IP行使逐跳协议,IP之上的各层行使端到端协议。

路由器

路由器事变于收集层,是IP层的焦点装备。

路由器有两个或两个以上的收集接口,用于毗连两个或多个收集,认真将IP数据报(分组)从一个收集接口转发到另一个收集接口。

带有多收集接口(网卡)的主机也能包袱转发分组的成果,这种主机称为作为路由器行使的主机。

普通易懂收集协议(IP)

假如把一个墟落比喻成一个小的局域网,那路由器就相等于毗连墟落的桥梁,路由器属于中间体系,以是毗连差异收集的路由器必要实现差异的链路层协议,完成差异链路层的翻译转换成果。

另一方面,路由器实现链路层+收集层这2层就够了,而不必实现传输层和应用层,这是由它的成果(实现分组互换)抉择的。

每个IP分组都是一个IP数据报,包括发送方和吸取方的第三层地点(IP地点),即32位的IPv4或128位的IPv6,IP数据报首部中的目标地点抉择将该数据报发往那里,而做出抉择和发送数据报到下一跳的进程叫转发,转发依靠于路由表,是存储于内存中的一个数据布局。

IP协议名目

在贴出IP协议名目之前,我们可以假想一下,IP协议必要包罗哪些信息,这比直接上图+死记硬背要好。

按照之前封装的描写,显然,IP数据报应该是包罗IP首部+数据负载,而这个不透明的负载(Payload)来自于TCP、UDP可能其他。

以是我们讲IP数据报名目,着实就是IP首部的构成和布局,由于数据负载来自于上层,而封装的本质要求上层的数据对基层潜匿、无须表明,既然IP的Payload对付IP层透明,那天然没什么可讲的。

IP首部由各类差异用途和寄义的字段构成。

由于IP分32位的IPv4和128位的IPv6,以是IP首部必要包罗版本号字段用来区分这两种环境。

由于IP认真分组转发,以是IP首部应该包罗目标IP地点,用于路由转发逻辑的处理赏罚,其它吸取端也许必要找到该分组的来历,以是也应该包括来历IP地点。

TCP、UDP、ICMP、IGMP都通过IP数据报传输,以是在IP首部,必要包括一个协议字段,用于区分该IP数据报承载的是哪种范例的协议。

IP不纠错,可是必要搜查错误,数据在传输进程中,有也许堕落,导致吸取到的数据跟发送的纷歧样,以是吸取端必要有要领知道传输进程中,数据是否跟发送端同等,以是头部校验和字段也是须要的。

由于IP要处理赏罚分片和重组,以是IP首部必要包括相干信息,以支持该成果。

IP分IPv4和IPv6两种,协议名目差异,本文报告以IPv4为主,先给一个IPv4的数据报图,不带选项的IP数据报头部为20字节。

普通易懂收集协议(IP)

  • 版本,IP协议的第一个字段都是版本字段,这也是IPv4和IPv6独一沟通的字段,IP数据报的版本字段为4对应IPv4,为6对应IPv6,主机可能路由器可以按照版本字段,别离处理赏罚IPv4或IPv6(称为双栈)。
  • IHL,Internet头部长度,该字段为4位,暗示头部(包罗选项)32位字的数目,也就是说,真正的用字节暗示的头部长度应该是IHL的值,再乘以4(32位=4字节),由于4位能暗示的最大2进制为1111,对应十进制15,以是IPv4的首部最多60(15*4)字节。
  • DS,处事范例字段占6bit,表现节制关照(ECN)占2bit,一共8bit,该8bit用来替代了最初版本的处事范例(ToS)字段,缘故起因是ToS着实没怎么被用。
  • 总长度字段,是IP数据报的总长度,包罗首部和数据。

接下来的32位字(4字节),标识(16bit)+符号(3bit)+分片偏移(13bit)用于分片和重组逻辑。

  • TTL,保留期字段用于配置数据报可颠末路由器数目的上限。超此上限的IP数据报将被扬弃。
  • 协议字段,8bit,提供多路解析成果,满意IP协议可用于携带多种(TCP、UDP、ICMP、IGMP等)协议范例的有用载荷的要求,TCP对应值17,UDP对应值为6。
  • 头部校验和字段,仅计较IPv4头部,不包罗数据,数据(Payload)的校验由传输层协议去担保,校验和的寄义很简朴明白,在发送端按照IP头部的列位计较出一个数值,吸取端按照吸取到的IP头部的列位重算一个数值,假如该值便是校验和字段,那就哦了,不然,传输进程中堕落了,这个IP数据报不靠谱,扔了吧。

分片和重组

链路层对可传输的帧有一个最大长度的限定,以太网对数据帧的长度上限是1500字节,链路层可传输帧的长度限定叫做最大传输单位(MTU)。

假如IP层有一个数据报要传,且数据长度比链路层的MTU还大,那么IP层就必要对该数据报分片(fragmentation),把超限的数据报切分为多少片,使得每片都小于MTU限定。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读