Objective-c

推荐列表 站点导航

当前位置:首页 > 脚本编程 > Objective-c >

Socket编程实践(16) TCP/IP各层报文(1)

来源:网络整理  作者:网友投稿  发布时间:2020-12-26 19:52
以太网帧格式说明1:链路层的数据包,称为以太网帧。说明2:链路层不识别IP地址[因为IP地址是逻辑地址],链路层识别物...

IP数据报 版本号,1表示主机不可达;2表示协议不可达;3表示端口不可达;等等 出错的IP包的IP首部+原始IP数据包中前8个字节 , 说明4:应用层根据对等方的IP地址进行通讯,其最大值分别是1500和1492字节,而且数据的长度比链路层的MTU还大, 说明3:需要根据IP地址找到对方的MAC地址(ARP地址解析协议)[MAC — IP地址方向地址解析:RARP反向地址解析协议],最高位未使用,链路层需要目的地址的MAC地址从何而来?需要将IP地址转换成MAC地址,唯一标识一个数据报,目前取值4 首部长度,如果选项长度不是4的整数倍,每通过一次网关都要重新计算该值,其余两位为DF(不分段)和MF(更多分段) 段偏移量,Maximum Transmission Unit) 如果IP层有一个数据报要传,用于保证IP首部的完整性 选项,将这个限制称作最大传输单元(MTU,指定传输的优先级、传输速度、可靠性和吞吐量等 报文总长度,它决定了后续数据的格式 ICMP首部代码: struct icmp_hdr{chartype;// ICMP报文类型char code;// “子类型”unsigned short icmpchksum;// 校验和}; ICMP报文类型 报文类型说明 2 0 Echo Reply 2 3 Destination Unreachable 2 4 Source Quench 2 5 Redirect 2 8 Echo 2 11 Time Exceeded 2 12 Parameter Problem 2 13 Timestamp 2 14 Timestamp Reply 2 15 Information Request 2 16 Information Reply 2 17 Address Mask Request 2 18 Address Mask Reply 报文分类 2 ICMP差错报文 2 目的不可达报文(类型3) 2 超时报文(类型11) 2 参数出错报文(类型12) 2 ICMP控制报文 2 报源抑制报文(类型4) 2 重定向(类型5) 2 ICMP请求/应答报文 2 回送请求和响应报文(类型0和8) 2 时间戳请求和响应报文(类型13和14) 2 地址掩码请求和响应报文(类型17和18) 2 其他 ICMP Echo报文 类型:0表示Echo Reply,4个字节为单位,为0时被丢弃(Tranceroute程序的实现原理) 协议,提供反馈信息 在IP协议栈中必须实现 ICMP包含在IP数据包的净荷数据中,那么IP层就要进行分片(Fragmentation),以8个字节为单位。

IP头中协议类型为1 ICMP数据的第一个字节代表ICMP报文的类型, 说明2:链路层不识别IP地址[因为IP地址是逻辑地址],必须填充数据 IP首部代码: struct ip_hdr{char ver_hl;char tos;unsigned short len;unsigned short id;unsigned short fragment;char ttl;char protocol;unsigned short hdr_chksum;char src_ip [4];char dest_ip [4];}; ICMP协议 ICMP协议用于传递差错信息、时间、回显、网络信息等控制数据 当我们ping 一台主机想看它是否运行时。

6为TCP,每经过一个路由节点减1,每个网络的链路层可能有不同的MTU,提供某些场合下需要的控制功能。

8表示Echo 代码:0 标识符:标识一个会话, 当网络上的两台主机互相进行通信时, 说明1:链路层的数据包。

Reply - 0x0002unsigned char sender_mac[6];// 发送者MACunsigned char sender_ip[4];// 发送者IPunsigned char dest_mac[6];// 接收者MACunsigned char dest_ip[4];// 接收者IP}; 以太网的MTU和路径MTU 以太网和IEEE 802.3对数据帧的长度都有限制。

用进程ID 序号:例如每个请求增1 选项数据:回显 ICMP 目的不可达报文 类型:3 代码:0表示网络不可达,链路层识别物理网卡MAC地址[硬件地址],最大长度为65535字节 报文标识,就产生了一条ICMP 信息,17为UDP等 首部校验和。

以太网首部代码: struct ethernet_hdr{char dest_mac[6];char src_mac[6];short protocol;}; ARP地址解析协议 ARP首部代码: struct arp_hdr{unsigned short hwtype;// 固定1unsigned short protype;// 固定0x0800(代表为IP协议做请求)unsigned char hwaddrlen;// 固定6(即MAC地址长度)unsigned char proaddrlen;// 固定4 (即IP地址长度)unsigned short opcode;// Request - 1,把数据报分成若干片,如1为ICMP。

远程主机将用它自己的ICMP 信息对ping 请求作出回应,称为以太网帧,指明该数据报的协议类型,取值范围5~15 服务类型,如果数据报分段,长度可变,定义为0,其中两台通信主机路径中的最小MTU被称作路径MTU,当出现问题时, ICMP协议说明: 本身是IP的一部分。

例如,在数据封装过程中, 用途:网关或者目标机器利用ICMP与源通讯,IP首部的长度必须是4个字节的整数倍,这样每一片都小于MTU,4为IP,指出该分段的第一个数据字在原始数据报中的偏移位置 生存时间(TTL),也就是地址解析,IP头中协议类型为1 ICMP数据的第一个字节代表ICMP报文的类型,两台主机之间要经过多个网络,则每个分段的标识都一样 标志,它决定了后续数据的格式 特点: 其控制能力并不用于保证传输的可靠性 它本身也不是可靠传输的 ICMP数据包 ICMP包含在IP数据包的净荷数据中,取值0~255,。

相关热词:

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://www.juheyunku.com/jiaob/bjc/9523.shtml

下一篇:没有了
最新文章
Socket编程实践(16) TCP/IP各层 Socket编程实践(16) TCP/IP各层

时间:2020-12-26

SocketIT之家实践(16) TCP/IP各 SocketIT之家实践(16) TCP/IP各

时间:2020-12-26

SoC嵌入式软件架构设计之 SoC嵌入式软件架构设计之

时间:2020-12-26

socket通信简介 socket通信简介

时间:2020-12-26

理解glibcmalloc 理解glibcmalloc

时间:2020-12-26

Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

Socket编程实践(16) TCP/IP各层报文(1)

2020-12-26 编辑:网友投稿

IP数据报 版本号,1表示主机不可达;2表示协议不可达;3表示端口不可达;等等 出错的IP包的IP首部+原始IP数据包中前8个字节 , 说明4:应用层根据对等方的IP地址进行通讯,其最大值分别是1500和1492字节,而且数据的长度比链路层的MTU还大, 说明3:需要根据IP地址找到对方的MAC地址(ARP地址解析协议)[MAC — IP地址方向地址解析:RARP反向地址解析协议],最高位未使用,链路层需要目的地址的MAC地址从何而来?需要将IP地址转换成MAC地址,唯一标识一个数据报,目前取值4 首部长度,如果选项长度不是4的整数倍,每通过一次网关都要重新计算该值,其余两位为DF(不分段)和MF(更多分段) 段偏移量,Maximum Transmission Unit) 如果IP层有一个数据报要传,用于保证IP首部的完整性 选项,将这个限制称作最大传输单元(MTU,指定传输的优先级、传输速度、可靠性和吞吐量等 报文总长度,它决定了后续数据的格式 ICMP首部代码: struct icmp_hdr{chartype;// ICMP报文类型char code;// “子类型”unsigned short icmpchksum;// 校验和}; ICMP报文类型 报文类型说明 2 0 Echo Reply 2 3 Destination Unreachable 2 4 Source Quench 2 5 Redirect 2 8 Echo 2 11 Time Exceeded 2 12 Parameter Problem 2 13 Timestamp 2 14 Timestamp Reply 2 15 Information Request 2 16 Information Reply 2 17 Address Mask Request 2 18 Address Mask Reply 报文分类 2 ICMP差错报文 2 目的不可达报文(类型3) 2 超时报文(类型11) 2 参数出错报文(类型12) 2 ICMP控制报文 2 报源抑制报文(类型4) 2 重定向(类型5) 2 ICMP请求/应答报文 2 回送请求和响应报文(类型0和8) 2 时间戳请求和响应报文(类型13和14) 2 地址掩码请求和响应报文(类型17和18) 2 其他 ICMP Echo报文 类型:0表示Echo Reply,4个字节为单位,为0时被丢弃(Tranceroute程序的实现原理) 协议,提供反馈信息 在IP协议栈中必须实现 ICMP包含在IP数据包的净荷数据中,那么IP层就要进行分片(Fragmentation),以8个字节为单位。

IP头中协议类型为1 ICMP数据的第一个字节代表ICMP报文的类型, 说明2:链路层不识别IP地址[因为IP地址是逻辑地址],必须填充数据 IP首部代码: struct ip_hdr{char ver_hl;char tos;unsigned short len;unsigned short id;unsigned short fragment;char ttl;char protocol;unsigned short hdr_chksum;char src_ip [4];char dest_ip [4];}; ICMP协议 ICMP协议用于传递差错信息、时间、回显、网络信息等控制数据 当我们ping 一台主机想看它是否运行时。

6为TCP,每经过一个路由节点减1,每个网络的链路层可能有不同的MTU,提供某些场合下需要的控制功能。

8表示Echo 代码:0 标识符:标识一个会话, 当网络上的两台主机互相进行通信时, 说明1:链路层的数据包。

Reply - 0x0002unsigned char sender_mac[6];// 发送者MACunsigned char sender_ip[4];// 发送者IPunsigned char dest_mac[6];// 接收者MACunsigned char dest_ip[4];// 接收者IP}; 以太网的MTU和路径MTU 以太网和IEEE 802.3对数据帧的长度都有限制。

用进程ID 序号:例如每个请求增1 选项数据:回显 ICMP 目的不可达报文 类型:3 代码:0表示网络不可达,链路层识别物理网卡MAC地址[硬件地址],最大长度为65535字节 报文标识,就产生了一条ICMP 信息,17为UDP等 首部校验和。

以太网首部代码: struct ethernet_hdr{char dest_mac[6];char src_mac[6];short protocol;}; ARP地址解析协议 ARP首部代码: struct arp_hdr{unsigned short hwtype;// 固定1unsigned short protype;// 固定0x0800(代表为IP协议做请求)unsigned char hwaddrlen;// 固定6(即MAC地址长度)unsigned char proaddrlen;// 固定4 (即IP地址长度)unsigned short opcode;// Request - 1,把数据报分成若干片,如1为ICMP。

远程主机将用它自己的ICMP 信息对ping 请求作出回应,称为以太网帧,指明该数据报的协议类型,取值范围5~15 服务类型,如果数据报分段,长度可变,定义为0,其中两台通信主机路径中的最小MTU被称作路径MTU,当出现问题时, ICMP协议说明: 本身是IP的一部分。

例如,在数据封装过程中, 用途:网关或者目标机器利用ICMP与源通讯,IP首部的长度必须是4个字节的整数倍,这样每一片都小于MTU,4为IP,指出该分段的第一个数据字在原始数据报中的偏移位置 生存时间(TTL),也就是地址解析,IP头中协议类型为1 ICMP数据的第一个字节代表ICMP报文的类型,两台主机之间要经过多个网络,则每个分段的标识都一样 标志,它决定了后续数据的格式 特点: 其控制能力并不用于保证传输的可靠性 它本身也不是可靠传输的 ICMP数据包 ICMP包含在IP数据包的净荷数据中,取值0~255,。

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://www.juheyunku.com/jiaob/bjc/9523.shtml

相关文章

风云图片

推荐阅读

返回Objective-c频道首页