图解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的应用层包含了管理通信连接的会话层功能.转换数据格式的表示层功能,还包括与对端主机交互的应用层功能 ...
随机推荐
- 内核中的 likely() 与 unlikely()
内核中的 likely() 与 unlikely() 在 2.6 内核中,随处可以见到 likely() 和 unlikely() 的身影,那么为什么要用它们?它们之间有什么区别? 首先要明确: if ...
- 二、IRIG_B解码AC信号
AC-----过零检测(MAX913ESA)---1khzB码信号(以0v为界大于0为高,小于0为低,的 方波信号) AC-----信号放大(TLE2022ID--mv到5v) ---系统电压转换(M ...
- JavaScript设计模式与开发实践——JavaScript的多态
“多态”一词源于希腊文polymorphism,拆开来看是poly(复数)+ morph(形态)+ ism,从字面上我们可以理解为复数形态. 多态的实际含义是:同一操作作用于不同的对象上面,可以产生不 ...
- c++ goto的使用
c++ goto 语句的使用 1.定义一个类似标签的东西lable 2.使用goto关键字,跳转到lable, goto lable #include <iostream> #includ ...
- Android -- TouchEvent的分发和截获方式
Android系统中的每个ViewGroup的子类都具有下面三个和TouchEvent处理密切相关的方法: public boolean dispatchTouchEvent(MotionEvent ...
- org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actua ...
- Linux 下开放指定端口
安装tomcat后,在客户端输入地址 http://localhost:8080/ ,发现默认端口8080不能访问. 由于Linux防火墙默认是关闭8080端口.因此,若要能够访问8080端口,可以 ...
- 学习Linux第七天
1.shell echo $HOME 默认在shell中编写的变量全部是局部变量,如果重新打开console的话,那么这些变量将全部丢失,全局的变量可以写在文件~/.bashrc文件. 2.判断 !/ ...
- AutoMap1.0发布
去年就已经透漏了AutoMap的雏形,后面一段时间一直没有充裕的时间来完成,只能零星的进行完善.现在产品还有很多不足,基本架构已经完成,就先释放一个1.0版,希望大家多多支持. 一.服务端 服务端在I ...
- POSⅨ thread
POSⅨ thread 简称为pthread,Posix线程是一个POSⅨ标准线程.该标准定义 内部API创建和操纵线程. 编辑本段作用 线程库实行了POSIX线程标准通常称为pthreads.POS ...