tcp/ip详解笔记(3)

IP协议:

IP是TCP/IP里非常重要的协议,我们发送的TCP UDP ICMP IGMP等数据都要经过IP层的封装后才能进行传输。

IP协议提供不可靠的 无连接的服务。不可靠表现在:它不保证数据报一定发送到目的端,如果在半路上出现错误,IP协议会将数据报丢掉并发送ICMP差错报文(后面会讲)告诉发送端,可靠性由上层提供(TCP)。无连接表现在:它讲数据报发送出去后 就不在和其有任何连接,每个数据报都是独立的进行发送,所以如果A B两个报文先后发送,A
B的路线可能不一样,到达顺序也可能不一样。

IP首部格式:

在这里的协议版本号是4 代表ipv4 当然现在我们也有ipv6了

4位首部长度则代表ip首部含有多少个32bit(4字节),只有4位也就意味着最大值是15,整个ip首部的最大长度是60个字节。因此最后的选项字段最多有40个字节。

TOS 是不同应用程序按照其程序的特性填入,

可以根据这些字段进行路由决策

16位总长度代表该数据报的总长度为2^16-1,虽然很大,但由于MTU的限制,还有很多主机不能接受超过576字节的数据报,因此会被切片。

标识 标志还有偏移量留作后面介绍。

TTL是数据报最多经过的路有数。每经过一个路由器就减1,当为0时丢弃,并发送ICMP差错报文,后面讲到的traceroute就是根据这个特性来记录 数据报经过的路由器的地址的。

协议字段在之前提到过是分用的时候判断上层协议的

首部检验和是用来差错检验的,但是由于TTL每经过一个路由都会减一,因此在路由器转发的时候也会对检验和进行修改

最后一个选项字段前面提到最大为40字节,可以用来存放路径和时间戳等,后面讲ping的时候会提到因为字节的限制,所以只能记录最多9个IP地址(40个字节里还有3个字节作为选项)

从wireshark抓的一个tcp包,从上到下依次是链路层 网络层 运输层,可以清楚的看到数据报的格式,每一层的封装加了什么。和书上的基本一样。

IP路由选择留到第九章和第十章一起分析。

 

子网寻址:

不把IP地址简单的看成网络号+主机号 而是又将主机号分为子网号和主机号,这样更方便管理,更为重要的是这样减少了路由表的规模。划分子网在网络考试里遇到了好多次,很简单,从头上开始分,分成二叉树,先分配主机多的,在分配主机少的,尽可能的不浪费。

子网掩码:

给两个ip地址是无法判断是否在一个子网下,在这里引出了子网掩码,我们只需要将IP地址和子网掩码相与,得到的就是网络号。就可以判断ip数据报是:(1)本子网上的主机(2)本网络其他子网的主机(3)其他网络上的主机

时间: 2024-10-02 19:00:57

tcp/ip详解笔记(3)的相关文章

TCP/IP详解 笔记十四

TCP/IP协议(二)  连接的建立与终止 tcpdump -S输出TCP报文的格式 格式: 源>目的:标志 (标志就是tcp头部).标识首字符意义如下: 例如:telnet 某服务的输出(包括连接建立和终止) 标识解释:S 1415531521:1415531521(0) win 4096 <mss 1024> S(SYN):代表建立一个连接 1415531521:1415531521(0) :本次传送的首字节序号是1415531521(这里是ISN),尾字节序号是1415531521

TCP/IP详解 笔记十三

TCP协议(一) 概述 特点 1,  面向连接可靠的字节流服务 2,  只有两方通信,不能用于广播或多播 3,  应用数据被TCP分隔为最合适发送的数据段,传给IP协议栈 4,  发送端并启动定时器,超时重传 5,  接收端需要发送确认 6,  检验和错误的数据包将被丢弃,并不确认收到此数据包(希望超时重传) 7,  重新排序,因为TCP数据包是IP报文的数据,而ip协议不保证数据按顺序到达,所以需要重新排序. 8,  同理,ip包会发生重复,所以TCP需要排重. 9,  流控制,TCP的每一方

TCP/IP详解 笔记八

UDP协议 UDP是传输层协议,提供无连接不可靠的数据传输,其优点失效率高,确定确定是无序不可靠. 报文格式 UDP头部 TCP和UDP的端口号是独立的 UDP长度是指UDP数据报的总长度 UDP的校验和 分片 在发送端主机上或中间路由器上,IP把数据包长度和MTU做比较,决定是否分片.只有到达目的地才进行重新组装.如果丢失分片则重传整个报文.

TCP/IP详解 笔记九

广播和多播 多播和广播只能用于UDP包,TCP明确在两个进程间建立连接. 多播:帧只传送给属于多播组的多个接口 主机对帧的过滤过程: 通常网卡只接收那些目的地址为本物理接口地址或广播地址的帧:设置为混合模式的网卡能接收每个帧的一个复制.大多数网卡经过配置都可以接收目的地址为多播地址或子网多播地址的帧.对于以太网,当地址中最高字节的最低外为1时表示该地址是一个多播地址(01:00:00:00:00:00:).当网卡接到一个错误校验和的帧将丢弃该帧. 设备驱动程序:帧必须指明要使用的协议:进行多播过

TCP/IP详解 笔记十一

域名服务系统(DNS) DNS:名字到IP转换:电子邮件选路信息:分布式数据库 解析器:是通过gethostbyname(3)和gethostbyaddr(3)来实现的 最常用的名字服务器是BIND DNS基础 域名的每个标志符的最大长度是63个字符长度,不区分大小写 每个节点域名是从该节点到根用”.”连接起来的字符串 每个节点域名必须不一样,但节点标志可以一样 绝对域名:以”.”结尾的域名 不完整域名:不以点结尾的域名.如果不完整的域名由两个或两个以上的标号组成则认为它是完整的. 1)    

TCP/IP详解笔记(2)

链路层相关协议 :以太网封装  SLIP协议  CSLIP协议  PPP协议 可以从图中看出链路层的三个目的: (1)为IP模块发送和接收数据报 (2)为ARP模块发送ARP请求和ARP应答 (3)为RARP发送RARP请求和接收RARP应答 以太网和IEEE封装 图上面的是IEEE的封装 下面的是以太网的封装,我们主要看下面的: 链路层将来自上层的数据报封装成帧,可以看到类型有3个可选项,这是为分用准备的,CRC是用来差错检验的.ARP和RARP后面的PAD是因为以太网封装的数据部分最少是48

TCP/IP详解笔记(8)

广播.多播 IGMP协议 DNS协议 单播是指两台主机的点对点,广播和多播则是一对多. 广播和多播仅用于UDP 广播: 四种广播地址: 受限的广播:255.255.255.255 改地址用于主机配置过程中IP数据报的目的地址. 指向网络的广播:A类网络广播地址为neid.255.255.255 neid为A类网络的网络号. 指向子网的广播:主机号全为1且有特定子网号的地址.例如128.1.2.255 子网掩码为255.255.255.0. 指向所有子网的广播:子网号和主机号都为1.例如128.1

TCP/IP详解 笔记十二

简单文件传送协议 TFTP 1)         初衷是为了引导无盘系统 2)         使用UDP 3)         代码都能适合只读存储器 无盘主机通过RARP获得ip地址后进行一个TFTP请求 报文格式 正常情况下,一个无盘系统第一个请求是读请求 1)         操作码有,(1==RRQ)是读请求,(2==WRQ)写请求,3数据传输,4数据确认,5差错报文. 2)         在操作码为1,2是文件名是要写或要读的文件名以0字节结束 3)         模式分两种也以

TCP/IP详解笔记(9)

TFTP简单文本传输协议和BOOTP引导程序协议 TFTP协议 TFTP主要使用UDP协议,当需要将程序或文件同时向许多机器下载时就需要TFTP.或者当无盘系统工作时先广播一TFTP请求,网络上的TFTP服务器就会发送响应,其中包含可执行的程序,依靠这个无盘系统来执行程序. 同时为了允许多个客户并发的进行系统引导,TFTP通过为每个客户分配一个端口号来实现并发. TFTP协议没有提供安全性. BOOTP引导程序协议: 在ARP协议时说过可以通过RARP来得到自己的IP,但这只能得到IP地址,且该