图解TCP/IP读书笔记(三)
第三章.数据链路
数据链路层是计算机网络最基本的内容。
数据链路层的协议定义了通过通信媒介互连的设备之间传输的规范。
一、数据链路相关技术
1.MAC地址
关于MAC地址的几个要点:
①MAC地址长度为48比特:
| MAC地址位数 | 含义 |
|---|---|
| 第1位 | 单播地址(0)/多播地址(1) |
| 第2位 | 全局地址(0)/本地地址(1) |
| 第3~24位 | 由IEEE管理并保证各厂家之间不重复的厂商识别码 |
| 第25~48位 | 由厂商管理并保证产品之间不重复的厂商内识别码(OUI) |
②MAC地址都是唯一的,在全世界都不会重复。
例外情况:1.微机板上可以自由设置自己的MAC地址。2.一台主机上如果启动多台虚拟机,由于没有硬件的网卡只能由虚拟软件自己设定MAC地址给多个虚拟网卡,很难保证MAC地址独一无二。
2.共享介质型网络
共享介质型网络指由多个设备共享一个通信介质的一种网络(如最早的以太网和FDDI)。基本上采用半双工通信(独占通信介质发送数据,也就是说,不能同时接收和发送数据)。
两种介质访问控制方式:
| 方式 | 特点 | 缺陷 | 改良 |
|---|---|---|---|
| 争用方式(CSMA,载波监听多路访问) | “先到先得” | 如果多个站同时发送帧,则会产生冲突现象。 | CSMA/CD方式,要求每个站提前检查冲突,一旦发生冲突,尽早释放信道,再重新争用介质。 |
| 令牌传递方式 | 沿着令牌环发送“令牌”特殊报文,只有获得令牌的站才能发送数据 | 因为一个站没有令牌就不能发送数据,所以数据链路的利用率在网络不拥堵时也达不到100% | 早期令牌释放、令牌追加、多个令牌同时循环等方式 |
3.非共享介质网络
非共享介质网络是指不共享介质,是对介质采用专用的一种传输控制方式。网络中每个站直连交换机,由交换机转发数据帧,发送端和接收端不共享通信介质。大部分情况下使用全双工通信方式(同时收发)。
致命弱点:交换机一旦出现故障,与之相连的所有计算机之间都将无法通信。
4.根据MAC地址转发
两个重要点:转发表、自学过程
交换机的自学原理:

5.环路检测技术
原因:数据帧在环路中可能会被一而再再而三地持续转发,而一旦这种数据帧越积越多将会导致网络瘫痪。
两种方式:1.生成树方式;2.源路由法。
6.VLAN(Virtual LAN)虚拟局域网
作用:1.通过VLAN技术可以不需要通过实际修改网络布线就可以实现分散网络负载、变换部署网络设备的位置等操作;2.VLAN技术附加到网桥上,可以实现过滤多余的包,提高网络的承载效率。
VID标签:在交换机中传输帧时通过该标签决定将数据帧发送到哪个网段。
二、以太网
在众多数据链路中最为著名、使用最为广泛的莫过于以太网(Ethernet)。
1.以太网的分类
例子:10BASE-T(10代表10Mbps,T代表传输介质为双绞线)。

2.以太网帧格式
图解是最直观的表示方式。

前14字节(目标MAC地址、源MAC地址和上层协议类型)构成以太网首部。
FCS作用:检测帧是否有所损坏。
三、无线通信
| 分类 | 通信距离 | 标准化组织 | 相关其他组织及技术 |
|---|---|---|---|
| 短距离无线 | 数米 | 个别组织 | RF-ID |
| 无线PAN | 10米左右 | IEEE802.15 | 蓝牙 |
| 无线LAN | 100米左右 | IEEE802.11 | Wi-Fi |
| 无线MAN | 数千米~100千米 | IEEE802.16、IEEE802.20 | WiMAX |
| 无线RAN | 200千米~700千米 | IEEE802.22 | —— |
| 无线WAN | —— | GSM、CDMA2000、W-CDMA | 3G、LTE、4G、下一代移动通信网络 |
IEEE802.11比较
| 方式 | 802.11 | 802.11a | 802.11b | 802.11g | 802.11n |
|---|---|---|---|---|---|
| 最大速度 | 2Mbps | 54Mbps | 11Mbps | 54Mbps | 150Mbps |
| 频率 | 2.4GHz | 5GHz | 2.4GHz | 2.4GHz | 2.4Ghz/5GHz |
四、PPP
PPP(Point-to-point Protocol)是指点对点,即1对1连接计算机的协议。PPP相当于位于OSI参考模型第2层的数据链路层。
PPP属于纯粹的数据链路层,与物理层没有任何关系。
PPP中两个协议:
1.LCP协议(Link Control Protocol,不依赖上层),主要负责建立和断开连接、设置最大接收单元、设置验证协议以及设置是否进行通信质量的监控;
2.NCP协议(Network COntrol Protocol,依赖上层,上层为IP是叫做IPCP),IPCP负责IP地址设置以及是否进行TCP/IP首部压缩等设置。
PPP连接身份验证协议:
1.PAP,用户名和密码验证,明文传输密码;
2.CHAP,使用一次性密码,较为安全。
PPPoE:在以太网的数据中加入PPP帧进行传输的一种方式。
作用:利用PPP的验证等功能使各家ISP可以有效地管理终端用户的使用。
图解TCP/IP读书笔记(三)的更多相关文章
- 图解TCP/IP读书笔记(二)
图解TCP/IP读书笔记(二) 第二章.TCP/IP基础知识 一.TCP/IP出现的背景及其历史 年份 事件 20世纪60年代后半叶 应DoD(美国国防部)要求,美国开始进行通信技术相关的研发 196 ...
- 图解TCP/IP读书笔记(一)
图解TCP/IP读书笔记(一) 第一章 网络基础知识 本学期的信安概论课程中有大量的网络知识,其中TCP/IP占了相当大的比重,让我对上学期没有好好学习计算机网络这门课程深感后悔.在老师的推荐下开始阅 ...
- # 图解TCP/IP读书笔记(五)
第五章.IP协议相关技术 IP旨在让最终目标主机收到数据包,但是在这一过程中仅仅有IP是无法实现通信的,因此还有需要作为为IP的辅助的各种协议支持. 协议 作用 特点 DNS(Domain Name ...
- 图解TCP/IP读书笔记(四)
第四章.IP协议 IP(Internet Protocol,网际协议),作为整个TCP/IP中至关重要的协议,主要负责将数据包发送给最终的目标计算机.因此,IP能够让世界上任何两台计算机之间进行通信. ...
- TCP/IP读书笔记(4) IPv4和IPv6 路由选择
TCP/IP读书笔记(4) IPv4和IPv6 路由选择 网络层是位于链路层之上,TCP/IP模型中网络层的核心协议是IP协议(Internet protocol). 目前主流的IP协议是IPv4(I ...
- 《图解TCP/IP》笔记
OSI参考模型 协议分层 为什么需要分层? 简化网络协议. 每一层只需要衔接上下层的服务. 利于模块化开发. 解耦. 分层的问题 过分模块化.提高数据处理的开销. OSI参考模型 作用及意义 将复杂的 ...
- 《图解tcp/ip》读书笔记(二)
<图解tcp/ip>读书笔记(二) 本周主要阅读的是本书的第三章--数据链路. 当然了,从某些角度讲,我认为这一章就是计算机网络的最基本的内容之一.整章讲述了数据链路层的作用和相关技术,主 ...
- 读书笔记——《图解TCP/IP》(1/4)
读书笔记——<图解TCP/IP>(1/4) 经典摘抄 第一章 网络基础知识 1.独立模式:计算机未连接到网络,各自独立使用的方式. 2.广域网 WAN 局域网 LAN 城域网 MAN 3. ...
- 读书笔记——《图解TCP/IP》(4/4)
经典摘抄 第八章 应用层协议概要 1.应用协议是为了实现某种应用而设计和创造的协议. 2.TCP/IP的应用层包含了管理通信连接的会话层功能.转换数据格式的表示层功能,还包括与对端主机交互的应用层功能 ...
随机推荐
- Qt 按键长按的处理
keyPressEvent()部分代码: if (e->key() == Qt::Key_A && e->isAutoRepeat()) { if (!mPressFl ...
- 通过 CALayer 修改 UIImageView 的界面属性
界面属性的修改是每一个开发者必须知道的,为什么我就记不住呢, shit, 又耽误了时间,为了防止再找不到,特把一些常用的 CALayer属性记在这里,顺便分享 1.设置阴影 1 imageView.l ...
- Window VNC远程控制LINUX:VNC详细配置介绍
Window VNC远程控制LINUX:VNC详细配置介绍 //---------------------------------------vnc linux下的详细配置 1.VNC的启动/停止/重 ...
- 查看Android应用签名信息
本文档介绍在Android下如何查看自己的应用签名及三方APK或系统APK签名信息,包含其中的MD5.SHA1.SHA256值和签名算法等信息. 1.查看自己的应用签名 可以通过两种方式查看 (1) ...
- OOP-ECMAScript - 深入理解Javascript
一.面向对象概论 x = {a: 10}; y = {b: 20}; y.Prototype = x z = {c: 30}; z.Prototype = y; z.a; x.a = 100; z.a ...
- MySQL 分组
MySQL GROUP BY 语句 GROUP BY 语句根据一个或多个列对结果集进行分组. 在分组的列上我们可以使用 COUNT, SUM, AVG,等函数. GROUP BY 语法 SELECT ...
- Oracle Goldengate和Oracle Data Integrator的初步认识
免责声明: 本文中使用的部分图片来自于网络,如有侵权,请联系博主进行删除 1. Oracle Glodengate是什么? GoldenGate是oracle的一种基于数据库日志的数据同步软件 ...
- HBAO
nv算是坑死我了,之前下的hbao的sample这次怎么都找不到 http://developer.download.nvidia.com/SDK/10.5/direct3d/samples.html ...
- Ajax status状态详解
readyState属性包括五种可能的取值: 0: (未初始化)send方法还没有被调用1: (加载中)已调用了send方法,请求还在处理2: (已加载)send方法已完成,整个应答已接收3: (交互 ...
- html5碰撞小球模拟
这里根据动量守恒和能量守恒定理来计算小球的位置,从而模拟完全弹性碰撞下的小球运行轨迹. html代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML ...