TCP/IP基本原理 第二章 网络接口层.

Slides:



Advertisements
Similar presentations
3.2 使用点对点信道的数据链路层 使用点对点信道的数据链路层 点对点协议 PPP PPP 协议的特点 PPP 协议的帧格式 PPP 协议的工作状态.
Advertisements

NAT与ICMP交互.
计算机网络教程 任课教师:孙颖楷.
第三章 数据链路层 任务驱动 问题探究 习题讲解 实验要求.
计算机网络课程总结 一、计算机网络基础 计算机网络定义和功能、基本组成 OSI/RM参考模型(各层的功能,相关概念, 模型中数据传输 等)
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
第四章 网络层 网络层 网络层 网络层 网络层 网络层.
淄博信息工程学校 ZIBOIT&ENGINEERING VOCATONAL SHCOOL 03 交换机干道技术 计算机网络技术专业.
一、数据链路层的设计问题 1. 向网络层提供的服务
第1章 网络标准化 锐捷认证网络工程师RCNA.
2.3 网络域名及其管理.
实验八 配置动态路由-OSPF协议.
网络实用技术基础 Internet技术及应用.
第17章 实现路由器.
项目四 组建跨地区网络 授课教师:肖颖.
辅导教师:杨屹东 网络实用技术基础 辅导教师:杨屹东
第 3 章 数据链路层 基本内容:数据链路层的基本概念,数据链路层协议的工作原理:停止等待协议,连续ARQ协议,滑动窗口,选择ARQ协议,Internet中的数据链路层协议。 重点掌握: 数据链路层的基本概念。 数据链路层协议的工作原理。 滑动窗口原理。
在PHP和MYSQL中实现完美的中文显示
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
IPv6 地址空间.
计算机网络原理 徐明伟
利用Wireshark观察网络报文 2015.
第二讲 搭建Java Web开发环境 主讲人:孙娜
ARP, RARP & ICMP.
ARP Spoofing -ARP 攻擊- 報告者 A 洪靖雅.
存储系统.
大学计算机基础 典型案例之一 构建FPT服务器.
管理信息结构SMI.
网络常用常用命令 课件制作人:谢希仁.
华为—E8372h- 155 外观设计 产品类型:数据卡 建议零售价格:299元 上市时间:2017年6月7日 目标人群:大众
实用组网技术 第一章 网络基础知识.
Windows网络操作系统管理 ——Windows Server 2008 R2.
Windows网络操作系统管理 ——Windows Server 2008 R2.
第十章 IDL访问数据库 10.1 数据库与数据库访问 1、数据库 数据库中数据的组织由低到高分为四级:字段、记录、表、数据库四种。
S 数控机床故障诊断与维修.
计算机网络 第 3 章 数据链路层 课件制作人:谢希仁.
第3章 IP寻址与地址解析.
《手把手教你学STM32》 主讲人 :正点原子团队 硬件平台:正点原子STM32开发板 版权所有:广州市星翼电子科技有限公司 淘宝店铺:
Chapter 3 数据链路层.
用event class 从input的root文件中,由DmpDataBuffer::ReadObject读取数据的问题
计算机网络 第三章:数据链路层 阮晓龙 / 河南中医学院管理信息工程学科 河南中医学院网络信息中心
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
SOA – Experiment 2: Query Classification Web Service
微机系统的组成.
本节内容 随机读取 视频提供:昆山爱达人信息技术有限公司.
1.4 计算机网络体系结构与协议 引言 网络系统的体系结构 网络系统结构参考模型ISO/OSI
主要内容: 无线局域网的定义 无线传输介质 无线传输的技术 WLAN的架构 无线网络搭建与配置 无线网络加密配置
计算机网络与网页制作 Chapter 07:Dreamweaver CS5入门
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
<编程达人入门课程> 本节内容 内存的使用 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群: ,
成绩是怎么算出来的? 16级第一学期半期考试成绩 班级 姓名 语文 数学 英语 政治 历史 地理 物理 化学 生物 总分 1 张三1 115
IT 安全 第 9节 通信和网络控制.
数据报分片.
本节内容 文件系统 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
Visual Basic程序设计 第13章 访问数据库
谢聪.
GIS基本功能 数据存储 与管理 数据采集 数据处理 与编辑 空间查询 空间查询 GIS能做什么? 与分析 叠加分析 缓冲区分析 网络分析
实验目的:掌握数据的顺序存储结构及它们在计算机中的操作。 实验内容:
基于列存储的RDF数据管理 朱敏
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
本节内容 动态链接库 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
Internet课程设计 教师:陈 妍 朱海萍 西安交通大学计算机系
3.8 局域网应用实例 某省劳动和社会保障网络中心组网实例 会议中心的无线组网实例.
第十七讲 密码执行(1).
FVX1100介绍 法视特(上海)图像科技有限公司 施 俊.
实验六静态路由.
使用Fragment 本讲大纲: 1、创建Fragment 2、在Activity中添加Fragment
IP路由协议 IP数据报从源主机无连接的、逐步地传送到目标主机,这就是IP协议的路由选择。.
入侵检测技术 大连理工大学软件学院 毕玲.
3.4 链路控制协议示例 一.面向字符的控制规程-- BSC
Presentation transcript:

TCP/IP基本原理 第二章 网络接口层

本章学习要求: 掌握:帧及其封装、物理地址、多宿主计算机的概念 掌握:网络接口层的任务、功能和主要责任 掌握:以太网物理地址的表示方法 掌握:网络接口层和链路层的关系 掌握:ARP协议、RARP协议和PPP协议的工作原理 掌握:ARP协议、RARP协议和PPP协议的帧格式 了解:查询本机的物理地址的方法 了解:熟练使用ARP命令

2.1 网络接口层的任务 任务:TCP/IP栈的底层是网络接口层。该层的任务是定义计算机怎样连接网络。它并不规定主机所在网络的类型,而是主机所在的网络支配网络接口层使用什么样的驱动程序。主机必须根据网络拓扑的规则发送和接收数据。 主要责任: 识别网络节点或计算机; 将从网络介质接收到的比特组合为帧,控制帧的大小; 将IP地址转化为局域网地址; 控制数据流; 封装并传输流出的数据; 检测错误但不修正; 为Internet层提供服务(如服务质量)和编址能力(单播、广播、组播)。

2.1.1 帧结构 不同的网络协议有不同的帧结构。我们以802.3网为例,说明上层协议发送的数据组成帧的净载数据,并通过物理介质发送到目的主机中。

2.1.2 物理地址 数据帧中用到的源地址和目的地址是物理地址。它是分配给网卡的一组号码。物理地址也叫: 硬件地址 网络接口卡(NIC)地址 2.1.2 物理地址 数据帧中用到的源地址和目的地址是物理地址。它是分配给网卡的一组号码。物理地址也叫: 硬件地址 网络接口卡(NIC)地址 物理地址 以太网地址(如果局域网使用以太网) 介质访问控制器(MAC)地址(如果局域网使用以太网) 计算机的物理地址有两种类型,固定地址和可配置地址。有些网卡,如 proNET 和 ARCNET,它们的它们的物理地址是可以改变的,因此也称为可配置网卡,而以太网卡的物理地址是固定的,不能改变。它是在生产网卡是就固化在网卡上了。

以太网的物理地址 以太网的物理地址用48位编码,6个字节。字节之间用冒号或减号分隔。我们可在命令提示符下用 ipconfig/all 来查询本机的物理地址。

以太网地址分配 IEEE为制造以太网卡的生产厂商分配48位的以太网物理地址。其中前24位为生产厂商的编号,后24位为生产厂商为每块网卡的编号。这种机制保证了任何两块网卡不会有相同的物理地址,从而保证了硬件地址的唯一性。

硬件地址类型 一个48比特地址不仅仅指定目的计算机地址。地址可以是以下三种形式之一: 单播地址(unicast address) 广播地址(broadcast address) 组播地址(multicast address)

广播分组及广播地址 大多数情况下,一个分组只有一个目的地。但分组也可以发送给局域网络上所有主机。这类分组叫广播分组。 广播分组包含的目的物理地址就是广播地址,其编码为: FF-FF-FF-FF-FF-FF

多宿主计算机 网络中的计算机可能插有多块网卡,每块网卡都代表该计算机的一个接口。当然这台计算机也就有多个物理地址,我们称这样的计算机为“多宿主计算机(multi homed computer)”。 路由器就是一个典型的多宿主计算机。

2.2 局域网硬件如何使用地址识别包 共享网络系统使用物理地址来识别传入的帧。处理帧传输与接收的网络接口硬件比较每一传入帧的目的地址与站点的物理地址,如果两者一致,硬件就将该帧传给操作系统,如果不匹配,就丢弃该帧。 由于网络接口执行这些操作时不使用站点的CPU,所以帧能在共享局域网上从一台计算机传输到另一台计算机,而不妨碍计算机的执行。

2.3 地址映射 地址映射:在物理介质传输数据前,必须将高层(Internet层)用来识别主机的软件地址转换为低层硬件地址。 2.3 地址映射 地址映射:在物理介质传输数据前,必须将高层(Internet层)用来识别主机的软件地址转换为低层硬件地址。 ARP:地址解析协议:将软件地址映射成相应硬件地址的任务有地址解析协议(ARP)完成。 RARP:逆地址解析协议:将硬件地址转换成相应的软件地址有逆向地址解析协议(RARP)承担。

2.3.1 ARP协议 ARP进行地址解析的步骤: 需要传输数据的计算机在网络中广播接收端的IP地址; 本机IP地址与广播的IP地址匹配的计算机发送一个应答包,该应答包中包含了本机的IP地址和硬件地址; 发送端用从收到的应答包中告知的MAC地址为目的地址来组成一帧并通过网络传送给目的主机。 发送方获取到MAC地址后存入本地ARP缓存,保存2分钟。如果2分钟内还要向同一IP地址传送数据,发送端将会检查ARP缓存以获取相应的MAC地址。如果ARP缓存不包含此地址,则发送端计算机重复步骤1~3以获取物理地址。

ARP缓存 ARP缓存:它是位于主机内存中的一段区域,其中包含了一些已知主机的IP地址和对应的MAC地址列表,以及它们的存活时间TTL值。 动态ARP缓存项目:当一条ARP项目被记录在缓存时,其生存时间(2分钟)也同时被记录下来。如果ARP缓存项目的缓存时间超过2分钟,此项目会被删除。但如果系统在删除时发现它正在被使用,那么系统会将此项目最多保存10分钟。 查看ARP缓存中已有的项目:ARP缓存中保存的项目可以通过 ARP -a 命令来显示。

用 ARP -a 命令显示ARP缓存中的项目: 下图中第一列数据表示IP地址,第二列数据表示硬件地址,第三列数据说明项目如何进入ARP缓存区。如果地址是通过广播发现的,则为动态地址,有存活时间的限制;如果是手工输入的地址,则为静态地址,不会被自动删除。

缓存超时 缓存超时机制的目的:主要为了解决无效缓存项目。设想,当网络中某一计算机B已崩溃或关机,而另一计算机A还若继续向B计算机发送分组。数据会象没事一样正常发送,因为A计算机并不知道B计算机已经崩溃或已经关机。A计算机也不会意识到自己的ARP缓存中有关B机器的缓存项目已经是无效项目。 解决的办法就是设置项目的存活时间TTL。一旦时间超时,项目就会被删除。当A机要向B机传送数据时,会检查缓存中的项目,如果没有匹配的项目,A机再发一个广播帧,以获得B 机的MAC地址。如果B机已经关机,则不会给予应答,这意味着广播征询B机的MAC地址失败,A机的数据就不会被传输。

ARP命令选项 -a 显示当前的ARP cache (高速缓存) -d 删除一个ARP条目(地址映射项) -f 向ARP cache中载入一个条目文件 -d 删除一个ARP条目,可以在运行一些例子之前使用,以让我们看清楚ARP的交换过程。 -s 创建一个ARP条目,这个参数需要主机名和以太网地址:对应于主机名的IP地址和以太网地址被增加到高速缓存中。新增加的内容是永久性的(比如,它没有超时值),除非在命令行的末尾附上关键字temp。

2.3.2 RARP协议 RARP (Reverse Address Resolution Protocol)原理:一台机器的IP地址存储在硬盘上。如果一台IP机器不带硬盘(如无盘工作站或终端),启动时无法知道其IP地址。但它知道它的MAC地址。为了给自己获得一个IP地址,它发出一个询问分组,其中包括其MAC地址,要求回答这一MAC地址的IP地址。一个称为RARP服务器的特定机器作出响应并回答。

RARP服务器的设计 虽然RARP在概念上很简单,但是设计一个RARP服务器与系统相关而且比较复杂。 RARP服务器的复杂性在于,服务器一般要为多个无盘主机提供硬件地址到IP地址的映射。该映射包含在一个磁盘文件中(在Unix系统中一般位于/etc/ethers目录中)。由于内核一般不读取和分析磁盘文件,因此RARP服务器的功能就由用户进程来提供,而不是作为内核的TCP/IP实现的一部分。 更为复杂的是,RARP请求是作为一个特殊类型的以太网数据帧来传送的(帧类型字段值为0x8035)。这说明RARP服务器必须能够发送和接收这种类型的以太网数据帧。由于发送和接收这些数据帧与系统有关,因此RARP服务器的实现与系统是捆绑在一起的。

另一个复杂因素是RARP请求是在硬件层上进行广播的,这意味着它们不经过路由器进行转发。为了让无盘系统在RARP服务器关机的状态下也能引导,通常在一个网络上要提供多个RARP服务器。当服务器的数目增加时(以提供冗余备份),网络流量也随之增加,因为每个服务器对每个RARP请求都要发送RARP回答。发送RARP请求的无盘系统一般采用最先收到的RARP回答。 另外还要避免一种可能发生的情况,那就是每个RARP服务器同时回答,这样会增加以太网发生冲突的概率。

2.3.3 ARP/RARP协议帧格式

2.4 SLIP协议 SLIP的全称是Serial Line IP。它是一种在串行线路上对IP数据报进行封装的简单形式。它适用于家庭中每台计算机用RS-232串行端口和高速调制解调器接入Internet。 封装方法:SLIP的封装很简单,只是在IP分组的后面加上标志字节(0xC0),便成为一帧。如果该标志字节出现在IP分组中,则用字符填充加以解决。 即在其位置上连续发送两个字节0xDB,0xDC。如果0xDB出现在IP分组中,也要填充。 压缩的LSIP:连续的IP分组的头部往往是相同的。可以把相同于前一个IP分组相对应的字段删除后发送,在接收端再予以恢复。

SLIP的不足 没有任何检错和纠错功能; 只支持IP协议; 双方必须预先知道对方的IP地址,所以对于动态分配IP地址的家用计算机每法支持; 没有提供身份认证。

2.5 PPP协议 PPP(point-to-point protocol),PPP修改了SLIP协议中的所有缺陷。PPP包括以下三个部分: 建立、配置及测试数据链路的链路控制协议(LCP:Link Control Protocol)。它允许通信双方进行协商,以确定不同的选项。 针对不同网络层协议的网络控制协议(NCP:Network Control Protocol)体系。

PPP帧格式

PPP工作原理 我们以家用电脑通过modem上网为例。 家用PC通过modem呼叫ISP的路由器,在路由器的modem回答了这个电话后,就建立起了物理连接; 此PC机向路由器发送一系列LCP分组,这些分组以及它们的响应选择使用PPP参数,由此完成链路层的连接; PC机发送一系列NCP分组来配置网络层参数,一般而言,它想运行TCP/IP协议,所以需要一个IP地址。至此,此PC机就成为Internet上的一台主机,并能够收发分组; 工作完成后,使用NCP拆除网络层的连接,释放IP地址;然后使用LCP来关闭链路层连接;最后计算机告知modem挂上电话,释放物理层连接。

工作流程时序 Phase Setup < Link Dead > Connect user NAS Phase Setup Connect LCP Configuration-Request Configure-Ack IPCP Configure-Request Configuration-Ack Datagram IPCP Terminate-Request Terminate-Ack LCP Terminate -Request Clear Disconnect < Link Dead > < Link Establishment > < Network Layer Protocol > < Link Termination > < Authentication >

PPP的优点 PPP支持在单根串行线路上运行多种协议,不只是IP协议; 每一帧都有循环冗余检验; 通信双方可以进行IP地址的动态协商(使用IP网络控制协议); 与SLIP类似,对TCP和IP报文首部进行压缩; 链路控制协议可以对多个数据链路选项进行设置。

2.6 小结 地址可分为两类:物理地址(或硬件地址)、逻辑地址(IP地址)。 2.6 小结 地址可分为两类:物理地址(或硬件地址)、逻辑地址(IP地址)。 物理地址是分配给计算机网络接口单元的地址,并由网络接口层用来在网络中传输数据。 更高层的协议需要使用软件地址来传输数据。 ARP用于通过IP地址解析物理地址。 RARP用于无盘工作站通过物理地址获取IP地址。 SLIP是一种在串行线路上对IP数据报进行封装的简单协议。 PPP是一种在串行线路上对IP数据报进行封装、检错、身份认证等功能的协议。

本章习题 参见教师网页:http://staff.ustc.edu.cn/~leeyi