携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第4天,点击查看活动详情
对于网络而言,IP扮演着重要的角色,堪称网络界的网红
在接下来,我将会细聊因特网IP协议,此后在工作中或者是相关业务聊起来,都能够运用起来,对此不陌生。在下文里,我们将会对以下内容进行开展。
因特网IP协议
什么叫IP?当有人这么直白的一问你,你是否能够耳熟能详的道来?我相信多数都是熟悉这个名词,但是都是一些模糊的定义,一时说不出一个大概来。
通俗的讲,IP和我们的身份证一样,也是一张身份证,存在于电脑、手机、监控摄像头等需要用到网络的设备作为它们的标识。
它同样的也具有和我们的身份证一样的特性,记载着当前设备的一些基本信息,可以用来被追踪和定位的。只要用上了联网设备,无论在何时何地做什么操作,你的IP和其他ID信息都会被服务器记录下来。
那些在网络上以为的为所欲为,其实都被服务器一一的监听着,记录着你的一举一动,只要不触犯底线,就感觉不到什么事情发生。
IP协议,是TCP/IP协议栈中最核心的协议之一,通过IP地址保证了联网设备的唯一性,它是无连接,不可靠,作用于数据报的交换。
也就是说,只要给每个设备加上IP标识,并且在通讯的时候,将IP标识嵌入到数据报里面,就能确定这个数据报发送的往返过程都是可以准确找到且无误的。
这不难理解,这些规则的拟定都是来源于我们的生活,就好比IP比作我们的身份证,身份证上记载我每个人身上唯一的信息,有了身份证,无论是做高铁还是飞机,都是允许的,且往返航程都是可以根据身份证能跟踪到的。
因特网IP数据报
那么上面所说的数据报又是什么样的呢?我们来看以下图文。
▲图/ 分支-网络体系结构IP数据报
我们很快联想到,IP数据报跟我们填写的快递单是不是特别的像,它有一些重要的字段标识着IP报文的特性。
▲图/ 分支-网络体系结构IP数据报优先级
IHL: (Internet Header Length 报头长度),20字节。
服务类型: 区分优先级,用3比特指明标志位D、T和R,还有2比特未用。优先顺序指出IP报文的优先级,取值从0~7,0为最低优先级,7为最高优先级。D、T、R三位表示IP报文希望达到的传输效果,其中D(Delay)表示低延迟,T(Throughput)表示高吞吐率,R(Reliability)表示高可靠性。需要注意的是,服务类型字段的值只是用户的要求,对网络并不具有强制性,路由器在进行路由选择时只把它们作为参考。
总长度: 总长度指首部和数据之和的长度,单位为字节。总长度字段为16位,因此数据报的最大长度为2^16-1=65535字节。
头校验和: 只校验IP,不对数据进行校验。
源地址: 源IP地址。
目标地址: 目的IP地址
TTL (生存期) : 每经过一个路由器时,就把TTL减去数据报在路由器消耗掉的一段时间。若数据报在路由器消耗的时间小于1秒,就把TTL值减1。当TTL值为0时,就丢弃这个数据报。\
用户数据: MAC帧长1518字节,MTU 1500字节,IP用户数据可传输:1518-14-4-20 = 1480字节, TCP在IP的基础上再减去20,为1460字节。
数据处理过程
那么,他们是怎样进行交互的一个过程呢?首先我们需要知道的是TCP是在传输层,IP是网络层进行交换的。
▲图/ 分支-网络七层/四层模型
首先我们能注意到报文报含了这几个块:
Ethemet帧头、IP头部、TCP头部,上层数据。 每一份传输的数据都是这么个封装结构,他的上层数据就对应着应用层的数据,就是我们传输的用户数据;而TCP头部呢,就对应着四层模型里的传输层,标记了由源向目的发送的记录,它是分段的,指向哪一个端口进行数据发送;而IP头部呢,对应着四层模型的网络层,是记录着分组发送的信息,我们发送的数据过大,需要进行分组传送;而Ethemet针头就是对应四层模型的物理层,以帧为单位进行传送的。
总结如下: 在建立连接后,用户发送的数据会经过四层,每经过一层都会加上一个头部进行标记对应处理的信息。特别类似我们的快递发送,拿到用户的一个包裹需要进行封装,贴上标签记录发送地址和目标地址,物件过大则需要进行分批次发送这么一个过程。
TCP/IP协议簇
那么我们可以注意到,TCP是传输层,IP是网络层,那么为什么经常会被我们叫做TCP/IP协议呢?为什么不叫UDP/IP协议或者其他呢?
其实啊,现实互联网中,普遍使用的是TCP协议作为传输层的协议,使用IP协议作为网络层的协议。因为TCP协议它是面向字节流,按顺序、连接、可靠、全双工,可变滑动窗口,缓冲积累传送的。
也就是说,使用TCP协议能够确保我们传输的数据是有保证的且可靠的,但是正是因为建立正确的连接,和TCP拥塞控制(差错控制、流量控制、拥塞控制),需要花费一定的时间,所以也是牺牲时间来确保安全的一种选择策略。
谈到TCP/IP组合,他们的组合也形成了一个大家庭,TCP/IP协议簇,
好了,因特网IP协议相关的内容都交代了,相信我的讲解能够帮助到你们,在用到的地方能够耳熟能详,那么,接下来会逐一讲解子网验码,传输协议,路由协议等相关的知识体系。