TCP/IP学习笔记(2)-数据链路层
数据链路层有三个目的:
为IP模块发送和接收IP数据报。
为ARP模块发送ARP请求和接收ARP应答。
为RARP发送RARP请求和接收RARP应答
ip大家都听说过。至于ARP和RARP,ARP叫做地址解析协议,是用IP地址换MAC地址的一种协议,而RARP则叫做逆地址解析协议,在tcp/ip协议的后面章节会介绍它们(在局域网里面用ARP协议可以很容易的搞瘫痪网络哦)
数据链路层的协议还是很多的,有我们最常用的以太网(就是平时我们用的网卡)协议,也有不太常见的令牌环,还有FDDI,当然,还有国内现在相当普及的PPP协议(就是adsl宽带),以及一个loopback协议。
联系linux里面的ifconfig -a命令,这个命令通常会得到如下的结果
其中,eth0就是以太网接口,而lo则是loopback接口。这也说明这个主机在网络链路层上至少支持loopback协议和以太网协议。
以太网(Ether-net)的定是指数字设备公司( Digital Equipment Corp.)、英特尔公司(Intel Corp.)和Xerox公司在1982年联合公布的一个标准,这个标准里面使用了一种称作CSMA/CD的接入方法。而IEEE802提供的标准集802.3(还有一部分定义到了802.2中)也提供了一个CSMA/CD的标准。这两个标准稍有不同,TCP/IP协议对这种情况的处理方式如下:
以太网的IP数据报封装在RFC894中定义,而IEEE802网络的IP数据报封装在RFC1042中定义。
一台主机一定要能发送和接收RFC894定义的数据报。
一台主机可以接收RFC894和RFC1042的封装格式的混合数据报。
一台主机也许能够发送RFC1042数据报。。如果主机能同时发送两种类型的分组数 据,那么发送的分组必须是可以设置的,而且默认条件下必须是RFC 894分组。
可见,RFC1042在TCP/IP里面处于一个配角的地位。这两种不同的数据报格式请参考教材。
ppp(点对点协议)是从SLIP的替代品。他们都提供了一种低速接入的解决方案。而每一种数据链路层协议,都有一个MTU(最大传输单元)定义,在这个定义下面,如果IP数据报过大,则要进行分片(fragmentation),使得每片都小于MTU,注意PPP的MTU并不是一个物理定义,而是指一个逻辑定义(个人认为就是用程序控制)。可以用netstat来打印出MTU的结果,比如键入netstat -in
就可以观察到eth0的MTU是1500。而lo(环回接口)的MTU则是16436。
最后说说那个环回接口(loopback)。平时我们用127.0.0.1来尝试自己的机器服务器好使不好使。走的就是这个loopback接口。对于环回接口,有如下三点值得注意:
传给环回地址(一般是127.0.0.1)的任何数据均作为I P输入。
传给广播地址或多播地址的数据报复制一份传给环回接口,然后送到以太网上。这是 因为广播传送和多播传送的定义包含主机本身。
任何传给该主机IP地址的数据均送到环回接口。
这一章还是很简单的,一般作为了解知识也就足够了,没必要抠的那么详细。
转载于:https://www.cnblogs.com/whoknows1/p/9816326.html
TCP/IP学习笔记(2)-数据链路层相关推荐
- TCP/IP学习(30)——L2数据链路层的数据包处理详细流程
原文地址:TCP/IP学习(30)--L2数据链路层的数据包处理详细流程 作者:GFree_Wind 本文的copyleft归gfree.wind@gmail.com所有,使用GPL发布,可以自由拷贝 ...
- 【TCP/IP学习笔记1】 C语言讲解
TCP/IP学习笔记(一) 一. TCP/IP结构: TCP/IP是一个四层协议,结构如下: 1.应用层:各种应用程序和协议,如Http.FTP等. 2.传输层:TCP和 ...
- TCP/IP学习笔记(一)(转载)
一.TCP/IP结构: TCP/IP是一个四层协议,结构如下: 1.应用层:各种应用程序和协议,如Http.FTP等. 2.传输层:TCP和UDP TCP提供一 ...
- TCP / IP学习笔记(9)-dns域名系统
TCP / IP学习笔记(9)-dns域名系统 前面已经提到了访问一台机器要靠IP地址和MAC地址,其中,MAC地址可以通过ARP协议得到,所以这对用户是透明的,但是IP地址就不行,无论如何用户都需要 ...
- TCP IP学习笔记① 互联网通信过程
文章目录 一.TCP/IP和OSI模型 二.协议分层 2.1 物理层 2.2 数据链路层 2.2.1 以太网协议 2.2.2 MAC地址 2.2.4 广播 2.3 网际层 2.3.1 IP地址 ...
- TCP/IP学习笔记(3)----IP,ARP,RARP协议
把这三个协议放到一起学习是因为这三个协议处于同一层(网络层协议),ARP协议用来找到目标主机的Ethernet网卡Mac地址,IP则承载要发送的消息.数据链路层可以从ARP得到数据的传送信息,而从IP ...
- TCP/IP学习笔记(一)分层模型概述
简单来说,协议就是不同计算机之间进行通讯所遵循的标准,只有使用相同协议的计算机之间才可以实现网络通讯.这使得即使两台计算机之间的各种设备不同,只要使用的协议相同,就可以通讯 以两个人对话为例,协议可以 ...
- TCP/IP学习笔记:TCP/IP协议介绍
TCP/IP的通讯协议 这部分简要介绍一下TCP/IP的内部结构,为讨论与互联网有关的安全问题打下基础.TCP/IP协议组之所以流行,部分原因是因为它可以用在各种各样的信道和底层协议(例如T1和X.2 ...
- OSI TCP/IP学习笔记
端口号 Telnet 远程终端协议 端口号 23 FTP 文件传输协议 端口号 21 SMTP 邮件传输协议 端口号 25 HTTP 超文本传输协议 端口号 80 HTTPS 安全超文本传输协议 ...
最新文章
- +z +Z compiler flag for HP
- Google Mock(Gmock)简单使用和源码分析——源码分析
- 一本真正讲“大数据”处理思路的书
- 首次吃了一颗带奶糖味的消炎药,不知道管用不
- OC__part11.2
- python dash_Dash是Databricks Spark后端的理想基于Python的前端
- 转 C#对多个集合和数组的操作(合并,去重,判断)
- 6G尚处于早期研究阶段,长足发展需要时间和耐心
- 【BZOJ-2888】资源运输 LCT + 启发式合并
- python下载pyhive包:
- 【价值积累】属于我的创业感悟
- IBM AIX初级培训总结
- php如何配置gii,深入浅析yii2-gii自定义模板的方法
- 第16期高级转录组分析和R数据可视化培训(2022年1月)
- 科普:手机的各种传感器原理及用途
- 超声波模块测距 Arduino代码
- vue项目使用域名部署(一个域名多个项目)
- 利用层次聚类算法进行基于基站定位数据的商圈分析
- 新开业和新签约酒店 | 北京通州希尔顿、上海临港美爵、高碑店世茂世御等酒店陆续开业和签约...
- 440P 测试三星ssd840pro 512g