网络原理一> ip协议相关特性

目录

概述:

IP协议和TCP协议复杂长度差不多,这里可以大概理解一下
IP协议属于网络层的协议,主要功能有两个
1.路由选择:在两个通信节点之间,规划出一条合理的路径
2.地址管理使用IP地址这样的概念,标识网络上某个设备的位置

IP协议结构属性理解:

4位版本:

开发阶段IPV4,和IPV6是当下主要使用的版本
IPv4使用,4个字节最为IP地址
IPv6使用16个字节作为IP地址

4位部首长度:

IP协议报头有选项,所以是边长的结构, 4位部首长度单位是4字节,能表示的最大值为二进制的"1111"就是十进制的15,所以IP协议头部最大长度为15*4=60字节

8位服务类型:

可以让IP协议切换工作状态,

16位总长度字节数:

**包括了IP数据报,报头+载荷的总长度,因为是16位,总长度就是2的16次方减一,就是64KB;但是在实际应用中受数据链路层的MTU限制,数据超过规定MTU,就会把数据包拆成多个IP数据包进行组装
触发后的拆包组包操作是这样的:
16位标识:把把拆出来的包,标记为相同的标识,再把相同标识的数据包组合到一起


3位标志位:描述了其中一个标志位,是否触发了拆包操作,还有一个标志位描述当前数据包是否是最后一个


13位片偏移:描述了组包的先后顺序,偏移小的放到偏移大的前面
注意:面试如果让你设计:怎样让UDP传输超过64KB的数据?就可以根据上面的:16位标识,3位标志位,13位片偏移来设计

8位生存时间:

一个IP数据包,能在网络上传输的最大时间:
IP数据包每经过一次路由转发,TTL值就减一,TTL减到0就表示这个数据包传播到目的地的,被丢弃

8位协议:

标识传输层使用什么协议,在网络层调用下一层分用时候,把数据包交给传输层时,这个时候8位协议就起到区分的效果,效果和应用层的端口号有异曲同工之妙

16位部首检验和:

IP协议里面一般传输,UDP或者TCP协议时候就,这个两协议的校验和进行检验,不知道校验和的参考上一篇文章-->点击

32位源IP地址和32位目的IP地址:

IP地址最关键的部分,IP地址本质通过32位整数来表示,但是由于32位整数不方便阅读,就用点分十进制表示了-->三个点分出四个部分如下:每个部分范围0~255
这里有个为问题?32位IP地址只够表示42亿9千万的数据,现在肯定不够的,一下我们说明一下解决方式。

IP地址不够用的解决方法:

一.动态分配IP地址:

使用就分配,不使用就不分配

二.NAT机制(当前最主要的方式):

我们知道:公网IP又叫外围IP,私网IP又叫内网IP;公网IP是唯一的不允许重复,同一局域网私网IP不可以重复


NAT机制具体就是网络地址转换,总结就是用一个外网IP,对应一堆内外设备来使用
如图:

IP地址组成和路由选择:

组成:

IP地址由网络号+主机号组成
特殊的IP:主机号为全1为广播,局域网中主机号不能设为0; 网络号127开头用于本机环回测试

路由选择:

路由选择就和问路是一样的,网络环境非常复杂任何一个路由器无法存储所有的网络信息,但是每个路由器可以知道自己附近网络的情况,比如和谁相连,通过层层问路,就可以找到指定路径


具体过程如下:
当数据报达到某个路由器的时候,会匹配这个路由器的路由表,路由表会存储着某个设备的周围设备的IP,以及会记录这个设备通过哪个口,转发给别的设备
如果目的IP刚好匹配到某个路由器的路由表中的记录,那么直接按照当前对应的口转发过去即可,如果没有匹配到对应的路由表信息,也没事,路由表会有一个特殊的表项"吓一跳",直接指向这个设备的上一级路由器所在的位置,上一级路由器包含的信息更广可以在那里寻找

相关推荐
国强_dev6 小时前
技术探讨:使用 stunnel 加密转发数据库连接时,如何获取客户端真实 IP?
数据库·网络协议·tcp/ip
云栖梦泽在13 小时前
Claude Code / Codex 使用卡顿怎么办?AI 编程 Agent 连接失败与网络排查思路
网络·人工智能·网络协议·chatgpt·性能优化
碎碎念_49216 小时前
网络通信基础:IP协议、ARP协议、DHCP
网络·arp·dhcp·ip协议
子不语18016 小时前
从0开始学习S7-1200+ET200SP(3)——两台S7-1200通过TCP连接
网络协议·学习·tcp/ip
折哥的程序人生 · 物流技术专研17 小时前
Java面试通关⑦:JavaWeb网络核心全集
网络协议·http·javaweb·校招·前后端交互·java面试·社招
小蜗牛的路19 小时前
使用OpenSSL生成本地证书https+nginx
网络协议·nginx·https
FPGA小迷弟20 小时前
vivado中的AXI Interconnect到底应该怎么用,他的底层原理是什么,一篇文档全部理清楚!!!
网络协议·tcp/ip·fpga开发·verilog·fpga
网络攻城狮_21 小时前
网络协议大全
运维·网络·网络协议·http
hbugs0011 天前
【案例分享】全网首个华三数据中心流量可视化实验,基于EVE-NG V7平台
网络·网络协议·安全·devops·eve-ng
yxl874646462 天前
PCTG-1015型Profinet转Ethernet/IP协议转换器
服务器·网络·物联网·网络协议·自动化·信息与通信