【转载】IP首部、TCP首部、UDP首部

【转载自】http://blog.csdn.net/hjffly/article/details/7959889

IP首部

版本:L3协议版本号,IPv4或IPv6

首部长度:单位为4字节

协议:L4协议类型

TTL生存时间字段设置了数据报可以经过的最多路由器数。一旦经过一个处理它的路由器,它的值就减1。当该字段值为0时,数据报就被丢弃,并发送ICMP报文通知源主机。

源端口号、目的端口号,用于寻找发送端和接收端应用进程。

32位序号:用于标识从TCP发端向TCP收端发送的数据字节流,表示在这个报文段中的第一个数据字节。

确认号包含发送确认的一端所期望收到的下一个包的序列号,只有ACK标志为1时,确认号字段才有效。

一旦一上连接建立起来,ACK标志总是被设置为1。

16位窗口大小:最大值为2^16-1(MTU:最大传输单元,以太网最大传输单元为1518字节,但以太网可以传送一个长达65535字节(2^16-1)的IP数据包,链路层会对其进行分片)。

4位首部长度:单位为32bit,包含选项字段。

TCP为应用层提供全双工服务,这意味着连接的每一端必须保持每个方向上的传输数据序列号和确认号。

URG:紧急指针有效

ACK:确认号有效

PSH:接收方应该尽快将这个报文段交给应用层

RST:重建连接

SYN:同步序号用来发起一个连接

FIN:发端完成发送任务

UDP首部

16位UDP长度:包含头部和数据部分

16位UDP检验和:覆盖UDP首部和UDP数据

UDP数据报和TCP段都包含一个12字节长的伪首部,它是为了计算检验和而设置的,伪首部包含IP首部中的一些字段。

TCP有超时重传机制,UDP没有。

时间: 2024-10-14 16:39:24

【转载】IP首部、TCP首部、UDP首部的相关文章

使用Python计算IP、TCP、UDP校验和

1.1 ip校验和的计算 Ip校验是针对ip头部的,即仅校验ip头部,而对于ip数据部分的校验,则交由相应的四次协议来保证, ip 头部中校验和字段为16bit. 计算原理如下: 1.把校验和字段设置为0 2.计算ip头部中所有16bit的字之和 3.将2中得到的和按位取反,得到校验和. 1.2 tcp校验和的计算原理 对于ip层协议来说,其校验和只要计算ip头即可,那相对的,对于四层协议来说,其校验和则需要计算四层头部与四层数据. tcp校验需要将ip伪首部.tcp报头.tcp数据分为16位的

(转)iOS 各种网络编程总结--进程、线程、Socket、HTTP、TCP/IP、TCP和UDP

######################################################### 进程与线程 进程和线程都是由操作系统分配和调度的程序运行的基本单元,系统利用该基本单元实现系统对应用的并发性. 进程是一块包含了某些资源的内存区域.操作系统利用进程把它的工作划分为一些功能单元.进程中所包含的一个或多个执行单元称为线程(thread).进程还拥有一个私有的虚拟地址空间,该空间仅能被它所包含的线程访问. 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更

Sendip 命令行发包工具,支持IP、TCP、UDP等

Sendip是一个linux平台的命令行发数据包工具,目前(2018年2月)支持的协议有ipv4.ipv6.icmp.tcp.udp.bgp.rip.ntp,作者表示其他协议将会后面支持,当他有空写的时候.Sendip很强大,它支持自定义头部和数据(也就是IP层以上的整个包),没有过多的限制,所以连源IP都可以随意写,而且里面也提供了一些默认的选项,可以择需而发,非常方便.又因为它是命令行的,还支持从文件中直接读取整个packet发送,所以适合用脚本批量测试.它只是个发包工具,对于发出去的包,收

TCP、UDP、IP 协议分析

本文转载自:http://blog.chinaunix.net/uid-26833883-id-3627644.html草根老师博客 互连网早期的时候,主机间的互连使用的是NCP协议.这种协议本身有很多缺陷,如:不能互连不同的主机,不能互连不同的操作系统,没有纠错功能.为了改善这种缺点,大牛弄出了TCP/IP协议.现在几乎所有的操作系统都实现了TCP/IP协议栈. TCP/IP协议栈主要分为四层:应用层.传输层.网络层.数据链路层,每层都有相应的协议,如下图 所谓的协议就是双方进行数据传输的一种

(转)TCP、UDP、IP协议

原文地址:http://blog.chinaunix.net/uid-26833883-id-3627644.html 互连网早期的时候,主机间的互连使用的是NCP协议.这种协议本身有很多缺陷,如:不能互连不同的主机,不能互连不同的操作系统,没有纠错功能.为了改善这种缺点,大牛弄出了TCP/IP协议.现在几乎所有的操作系统都实现了TCP/IP协议栈. TCP/IP协议栈主要分为四层:应用层.传输层.网络层.数据链路层,每层都有相应的协议,如下图 所谓的协议就是双方进行数据传输的一种格式.整个网络

深入浅出TCP与UDP协议

深入浅出TCP与UDP协议 网络协议是每个前端工程师的必修课,TCP/IP协议族是一系列网络协议的总和,而其中两个具有代表性的传输层协议,分别是TCP与UDP,本文将介绍这两者以及他们之间的区别. 一.TCP/IP网络结构模型 计算机与网络设备要相互通信,双方就必须基于相同的方法.比如,如何探测到通信目标.由那一边先发起通信.使用那种语言进行通信.怎样结束通信等规则都需要事先确定.不同的硬件之间的通信,所有的这一切都需要一种规则.而我们就把这种规则称之为协议(protocol). TCP/IP

tcp,udp报文最大长度

tcp,udp报文最大长度是怎么样的呢? 先来看看各个报文格式: ip报文 tcp报文 udp报文 ip和udp都有16位的长度字段,所以ip和udp报文的最大负载长度应该为2^16,64MB 网络层限制: MTU(Maximum Transmission Unit,最大传输单元),这限制了ip报文长度,ip报文长度大于mtu,就需要分片.通常设为1500字节. 在网络层,ip提供不可靠传输服务,一旦收到的数据报分片丢失部分或部分出现差错,就会全部丢弃,而不会选择重传. 传输层限制: tcp协议

【计算机网络】以太网帧,IP,TCP,UDP首部结构

1.以太网帧的格式 以太网封装格式 2.IP报头格式 IP是TCP/IP协议簇中最为重要的协议.所有的TCP,UDP, ICMP和IGMP数据都以IP数据报格式传输.IP提供的是不可靠.无连接的协议. 普通的IP首部长为20个字节,除非含有选项字段. 4位版本:目前协议版本号是4,因此IP有时也称作IPV4. 4位首部长度:首部长度指的是首部占32bit字的数目,包括任何选项.由于它是一个4比特字段,因此首部长度最长为60个字节. 服务类型(TOS):服务类型字段包括一个3bit的优先权字段(现

TCP/IP之TCP协议首部、三次握手、四次挥手、FSM

TCP包头 <--------------------------------32 位------------------------------> 0 8 16 24 32 |----------------|----------------|----------------|----------------| ----- | Source port | Destination port | | |-----------------------------------------------