TCP/IP详解 卷一(第二章 链路层)

在TCP/IP协议族中,链路层主要有三个目的:

1.为IP模块发送和接收IP数据报

2.为ARP模块发送ARP请求和接收ARP应答

3.为RARP请求和接收RARP应答

TCP/IP支持多种不同的链路层协议,本文主要讨论以太网链路层协议、PPP协议以及大多数实现都包含的环回(loopback)驱动程序。

使用ipconfig命令查看本机的网络接口

其中eth0就是以太网接口,lo是环回接口。

1.以太网IP数据包的封装

2.PPP协议(点对点协议)

3.环回接口

环回接口允许在同一台主机上的客户程序和服务器程序通过TCP/IP通信。

A类网络号127就是为环回接口预留的。根据惯例,大多数系统把IP地址127.0.0.1分配给这个接口,并命名为localhost。

下图是环回接口处理IP数据报的简单过程

4.最大传输单元MTU

ifconfig命令的输出中有一项代表数据帧的长度限制的数据:MTU。代表的是数据帧的最大传输单元。

如果IP层有一个数据报要传,而且数据的长度比链路层的MTU还大,那么IP层就需要进行分片,使得每一片都小于MTU。

时间: 2024-08-28 05:32:21

TCP/IP详解 卷一(第二章 链路层)的相关文章

TCP/IP详解学习笔记(三) 链路层

学习知识很简单,但坚持不懈却又是如此的困难,即使一直对自己说"努力,不能停下"的我也慢慢懈怠了... 闲话不多说,本篇将讲述TCP/IP协议栈的链路层.在本系列第一篇我讲到,TCP/IP协议栈每一层都有特定的功能, 那么链路层的功能如下: (1). 为IP模块发送和接收数据包 (2). 为ARP模块发送ARP请求和接收ARP应答 (3). 为RARP发送RARP请求和接收RARP应答 1.ARP, RARP协议概述 ARP协议即地址解析协议, 通过该协议应用层可以通过IP地址查询到目的

TCP/IP详解-卷一:协议

第一章概述 第二章Internet地址结构 第三章链路层 第四章地址解析协议 第五章Internet协议 第六章系统配置:DHCP和自动配置 第七章防火墙和网络地址转换 第八章ICMPv4和ICMPv6:Internet控制报文协议 第九章广播和本地组播(IGMP和MLD) 第十章用户数据报协议和IP分片 第十一章名称解析和域名系统 第十二章TCP:传输控制协议(初步) 第十三章TCP连接管理 第十四章TCP超时和重传 第十五章TCP数据流和窗口管理 第十六章TCP拥塞控制 第十七章TCP保活机

TCP/IP详解 卷一(第三章 IP:网际协议)

IP是TCP/IP协议族中最为核心的协议.所有的TCP.UDP.ICMP及IGMP数据都以IP数据报格式传输. IP提供不可靠.无连接的数据报传送服务. 1.不可靠:就是它不能保证IP数据报能成功地到达目的地.IP仅提供最好的传输服务. 2.无连接:每个数据报的处理都是相互独立的,IP数据报可以不按发送顺序接收. 1.IP首部 其中TTL(time-to-live)生存时间字段设置了数据报可以经过的最多路由器数. 一旦经过一个处理它的路由器,它的值就减去1.当该字段的值为0时,数据报就被丢弃.

TCP/IP详解 卷一(第十四章 DNS:域名系统)

域名系统(DNS Domain Name System)是一种用于TCP/IP应用程序的分布式数据库,它提供主机名字和IP地址之间的转换及有关电子邮件的选路信息. 从应用角度上看,对DNS的访问时通过一个地址解析器(resolver)来完成的. 在Unix主机中,该解析器主要是通过两个库函数gethostbyname(3)和gethostbyaddr(3)来访问的.前者接收主机名字返回IP地址,而后者接收IP地址来寻找主机名字. 解析器通过一个或多个名字服务器来完成这种相互转换. DNS基础 D

TCP/IP详解 卷一(第一章 概述)

很多不同的厂家生产各种型号的计算机,它们运行完全不同的操作系统,但TCP/IP协议族允许它们相互进行通信. 1.分层 TCP/IP不是一个协议,而是一个协议族,通常它被认为是一个四层的协议系统,下面展示了TCP/IP协议族中不同层次的协议 2.互联网的地址 互联网上每个接口必须有一个唯一的Internet地址(IP地址).IP地址(IPv4)长32bit,下面是5类不同的互联网地址格式 下面是各类IP地址的范围 3.端口号 TCP和UDP采用16bit的端口号来识别应用程序 4.RFC RFC(

《TCP/IP详解 卷一》读书笔记-----广播&多播&IGMP

1.广播和多播都只适用于UDP,因为TCP是面向连接的,需要将两台主机的两个进程绑定在一起,即IP地址和端口对 2.通常,网卡能看到网络中的每一个数据帧,但是往往它只接受目的地址与自己MAC地址相同的或者为广播地址的帧(现在有些也能接收多播地址),然后将它传输给设备驱动 3.广播的问题在于它给那些对广播数据不感兴趣的主机增加了处理负担(需要通过网卡,驱动,IP等一层层的判断),而多播的出现恰好解决了这些问题.通常一台主机会被指定加入一个或多个多播组,网卡也会被告知自己属于哪几个多播组,于是只有属

TCP/IP详解卷一08

1.Traceroute程序可以让我们看到IP数据报从一台主机传到另一台主机所经过的路由(Traceroute程序不需要中间路由器具备任何特殊的或可选的功能). Traceroute程序只需要目的端运行一个UDP模块----其他不需要任何特殊的服务器应用程序. Traceroute程序使用ICMP报文和IP首部中的TTL字段(生存周期,由发送端初始设置一个8bit字段,跳站的计数器,用来防止数据报在选路时无休止地在网络中流动,在循环传递的数据报上加上一个生存上限). 当路由器收到一份IP数据报,

TCP/IP详解卷一01

1.分层 1.1 链路层:包括操作系统中的设备驱动程序和计算机中对应的网络接口卡,处理与电缆的物理接口细节(以太网协议) 1.2网络层:处理分组在网络中的活动(IP协议,ICMP协议,IGMP协议) 1.3运输层:两台主机上的应用程序提供端到端的通信(TCP协议(为两台主机提供高可靠性的数据通信),UDP协议(为应用层提供数据报分组发送到另                              一台主机,却没有可靠性的保障)) 1.4应用层:负责处理特定的应用程序细节(Telnet远程登陆,

TCP/IP详解卷一07

1.Ping:目的是为了测试另一台主机是否可达.Ping程序发送一份icmp回显请求报文给主机,并等待返回ICMP回显应答(用ping作为诊断工具山如剖析ICMP,检测IP记录路由和时间戳选项的机会)(地址掩码和时间戳请求也都直接在内核中处理). 2.发送回显请求的ping程序为客户,被ping的主机为服务器.(Unix系统中在实现ping程序时是把ICMP报文中的标识符字段设置成发送进程的ID, 此时序列号从0开始,每发送一次回显请求就会加1(ping程序打印出返回的每个分组的序列号,允许查看