TCP/IP协议数据链路层
目录
一、数据链路层和网络层的关系
二、以太网
1、以太网格式
2、认识MTU
三、ARP协议
1、ARP协议的作用
2、ARP协议的工作流程
3、ARP数据报的格式
4、思考:浏览器中输入url后, 发生的事情(经典面试题)
一、数据链路层和网络层的关系
IP协议最大的意义是路径选择,要把数据送到哪是IP决定的,如何把目标送到指定地点是数据链路层决定的。能够直接通信的两个节点,一定是在同一个局域网内。
二、以太网
1、以太网格式
- 以太网数据帧中的源地址和目的地址是指网卡的硬件地址(MAC地址),长度是48位,是在网卡出厂时固化的,MAC地址描述的是路途上的每一个区间的起点和终点,也就是上一个节点和下一个节点的地址。
- 帧协议类型字段有三种值,分别对应IP、ARP、RARP。根据这个字段就可以判断出要向上交付给哪个协议。
2、认识MTU
MTU相当于发快递时对包裹尺寸的限制,这个限制是不同的数据链路对应的物理层, 产生的限制。以太网帧中的数据长度规定最小46字节,最大1500字节,ARP数据包的长度不够46字节,要在后面补填充位。最大值1500称为以太网的最大传输单元(MTU),不同的网络类型有不同的MTU。如果超过这个大小就要进行分片。
MTU对于TCP协议的影响:
- TCP的一个数据报也不能无限大, 因为要尽量避免分片。受制于MTU, TCP的单个数据报的最大数据长度, 称为MSS(MaxSegment Size)。
- TCP在建立连接的过程中, 通信双方会进行MSS协商。
- 双方在发送SYN的时候会在TCP头部写入自己能支持的MSS值,然后双方得知对方的MSS值之后, 选择较小的作为最终MSS。
三、ARP协议
1、ARP协议的作用
ARP不是一个单纯的数据链路层的协议, 而是一个介于数据链路层和网络层之间的协议。
在网络通信时,源主机的应用程序如果只知道目的主机的IP地址,却不知道目的主机的硬件地址(MAC),那么就无法在数据链路层传输。因此在通讯前必须获得目的主机的硬件地址。
2、ARP协议的工作流程
- 源主机发出ARP请求,询问“IP地址是192.168.0.1的主机的硬件地址是多少”, 并将这个请求广播到本地网段(以太网帧首部的硬件地址填FF:FF:FF:FF:FF:FF表示广播)。
- 目的主机接收到广播的ARP请求,发现其中的IP地址与本机相符,则发送一个ARP应答数据包给源主机,将自己的硬件地址填写在应答包中。
- 为了增加效率,每个主机都会维护一张ARP缓存表,只需要通过ARP发送一次请求就可以获得目标主机的MAC地址存在缓存表中。缓存表中每个表项的生命周期为20分钟,如果20分钟没有使用过缓存表中的每个表项则会失效,下次需要重新发送请求来询问ARP地址。
3、ARP数据报的格式
- 注意到源MAC地址、目的MAC地址在以太网首部和ARP请求中各出现一次,对于链路层为以太网的情况是多余的,但如果链路层是其它类型的网络则有可能是必要的。
- 硬件类型指链路层网络类型,1为以太网。
- op字段为1表示ARP请求,op字段为2表示ARP应答。
4、思考:浏览器中输入url后, 发生的事情(经典面试题)
TCP/IP协议数据链路层相关推荐
- 网际互联及TCP/IP 协议OSI七层模型: 物理层、数据链路层、网络层、传输层、会话层、表示层、应用层
网际互联及TCP/IP 协议OSI七层模型: 物理层.数据链路层.网络层.传输层.会话层.表示层.应用层 物理层 作用:定义一些电器,机械,过程和规范,如集线器: PDU(协议数据单元):bit/比特 ...
- 《TCP/IP协议族》:数据链路层三
1.引言 从图1-4可以看出,在TCP/IP协议族中,链路层主要有三个目的: (1)为IP模块发送和接收IP数据报: (2)为ARP模块发送ARP请求和接收ARP应答. (3)为RARP发送RARP请 ...
- HTTP 协议入门 — (TCP/IP协议族、通信传输流、URI 与 URL 的区别、Cookie 状态管理、HTTP 支持的方法、状态码类别、HTTP 首部字段)
TCP/IP协议族 在介绍 HTTP 协议之前,我们先对 TCP/IP 协议族有个大概的了解,TCP/IP 协议从上到下主要分为应用层.传输层.网络层和数据链路层,各层的主要功能如下表所示: 协议层 ...
- 网络协议OSI、TCP/IP协议、Socket套接字和第三方AsyncSock的使用等解析
一.网络协议定义 1.OSI参考模型:全称(Open System Interconnection), 开放式系统互联参考模型.是一个逻辑上的定义,一个规范,它把网络协议从逻辑上分为七层,只要目的是为 ...
- TCP/IP协议分析
一;前言 学习过TCP/IP协议的人多有一种感觉,这东西太抽象了,没有什么数据实例,看完不久就忘了.本文将介绍一种直观的学习方法,利用协议分析工具学习TCP/IP,在学习的过程中能直观的看到数据的具体 ...
- 深入TCP/IP协议1---图解OSI参考模型
首先我们看一下OIS参考模型各个层的作用 更具体一些图下图 字符集:一个国家或一个民族用到的全部字符的集合,美国用ASCII字符集,UTF8 传输层的功能:可靠传输 .流量控制 .拥塞避免,如果出现丢 ...
- 网络攻城狮怎么看待TCP/IP协议与UDP协议?
在互联网中,存在着各种不同层次的协议,它们分别的功能也是不同的.但做为网络攻城狮,对这些协议的使用以及区分是工作的必备技能.那今天以网络攻城狮的角度来告诉大家攻城狮是怎么看待TCP/IP协议与UDP协 ...
- OSI参考模型与TCP/IP协议的比较研究
OSI参考模型与TCP/IP协议的比较研究 OSI参考模型与TCP/IP协议的比较研究 摘要:OSI参考模型与TCP/IP协议是网际互联中的两个重要协议体系.本文从首先分别介绍了两个协议体系的产生 ...
- TCP/IP协议 网络层
IP协议介绍 1.IP协议是TCP/IP协议族中最为核心的协议.IP协议将多个包交换网络连接起来,它在源地址和目的地址之间传送一种称为数据包的东西,它还提供对数据大小的重新组装功能,以适应不同网络对包 ...
最新文章
- html5导航菜单置顶,jQuery和css3顶部固定导航菜单特效插件
- ansible编译安装--操作系统环境Redhat6.4
- c++ STL:队列queue、优先队列priority queue 的使用
- PHP中,json汉字编码
- linux操作系统进程间通信IPC之共享存储映射
- java刷机_java非智能手机能不能通过刷机安装一个安卓智能系统
- java解析excel 哪个好_java解析excel
- 哈里斯鹰优化算法(HHO)附代码
- PLC 有哪几种常用编程语言
- SPSS统计描述分析
- Makerbase_ODrive常见驱动问题及解决
- windows 下的CACTI的安装方法
- 2021-09-08 网安实验-编码解码-九宫格键盘编码
- 关于苏宁易购的好坏与网购的心酸苦逼史,有同感的请继续顶起
- moment通过时间戳获取星期几
- PowerTool kEvP.sys=V4.2 内核拒绝服务漏洞
- 他是硅谷最好斗的华人 微软、谷歌、特斯拉都离不开他
- Spring:been的生命周期
- bzoj3990【SDOI2015】排序
- nvidia设置wifi和接口