期末:week3,4,5,6,7,8,9

文章目录

        • 一.Reference Models
          • 1.OSI参考模型
          • 2.TCP/IP参考模型
        • 二.仪器
          • 1.Network Interface Card (NIC) 网络接口卡
          • 2.hub 集线器
          • 3.Switch
          • 4.路由器 Router
          • 5.网关 Gateway
          • 6.服务器 Servers
        • 三.数字调试 Digital Modulation(物理层)
          • 1.基带调制
          • 2.带通调制
        • 四.属性(一些量)
        • 五.数据链路层
        • 六.数据链路层--碰撞检测及恢复方法

一.Reference Models

参考模型主要分成:OSI 和 TCP/IP reference model

1.OSI参考模型

OSI参考模型
7层
1.Each layer should perform a well-defined function.
2. 物理层负责在通信信道上传输原始比特
3. 数据链路层的主要任务是将原始传输设备转换成一条没有未检测到的传输错误的线路。它通过隐藏真实的错误来做到这一点,这样网络层就不会看到它们。这是通过让发送方将输入数据分解为数据帧(通常是几百或几千字节)并按顺序传输帧来实现的。如果服务是可靠的,接收方通过发送回acknowledgement frame(确认帧)来确认每一帧的正确接收
4.The network layer controls the operation of the network
如果网络中同时存在太多的包,它们就会相互妨碍,形成瓶颈bottlenecks。处理拥塞也是网络层的责任
5.the transport layer :accept data from above it, split it up into smaller units if need be, 将它们传递给网络层,确保所有的pieces 都正确的到达另一端。运输层是 end-to-end layer端到端; it carries data all the way from the source to the destination
6.The session layer 会话层:允许不同机器上的用户之间建立会话
7.Presentation Layer:表示层负责所传输信息的语法和语义。为异种机通信提供一种公共语言,以便能进行互操作。这种类型的服务之所以需要,是因为不同的计算机体系结构使用的数据表示法不同。例如,IBM主机使用EBCDIC编码,而大部分PC机使用的是ASCII码。在这种情况下,便需要表示层来完成这种转换。
8.Application Layer应用层:包含用户通常需要的各种协议,如HTTP协议

2.TCP/IP参考模型

TCP/IP参考模型
4层
它的设计目的是让网络在面对系统故障时尽可能长时间地运行
1.应用层:应用程序间沟通的层
2.传输层:在此层中,它提供了节点间的数据传送,应用程序之间的通信服务,主要功能是数据格式化、数据确认和丢失重传等。道如传输控制协议(TCP)、用户数据报协议(UDP)等,TCP和UDP给数据包加入传输数据并把它传输到下一层版中,这一层负责传送数据,并且确定数据已被送达并接收。
TCP是一种可靠的面向连接的协议,它允许一个机器上的字节流在internet上的任何其他机器上都不会出错,它将传入的字节流分成离散的消息,并将每个消息传递到internet层,在目的地,接收TCP进程将接收到的消息重新组装到输出流中,TCP还处理流量控制。
3.网络层:负责提供基本的数据封包传送功能,让每一块数据包都能够到达目的主机(但不检查是否被正确接收),如网际协议(IP)。
4.网络接口层(主机-网络层):接收IP数据报并进行传输,从网络上接收物理帧,抽取IP数据报转交给下一层,对实际的网络媒体的管理,定义如何使用实际网络(如Ethernet、Serial Line等)来传送数据。

二.仪器

1.Network Interface Card (NIC) 网络接口卡
  • 在第一层使用
  • 这是与网络的第一个接触点
  • 每个连接的设备至少有一个网络接口卡。
  • 每一个网络接口卡 (NIC) 有唯一的 media access control address (MAC address), 是48位数字,在表单中以12个十六进制数字表示:FF: FF: FF: FF:FF: FF,如:AF-61-04-3B-45-D2
    每台计算机使用一个ARP表来跟踪相应的IP和MAC地址
2.hub 集线器
  • hub是一个连接设备,在第一层使用
  • Each device is connected into a port (physical) or interface on the device
  • Any signal that is inputted into an interface gets broadcast on all the other interfaces 输入接口的任何信号都会在所有其他接口上广播
  • Creates a single collision domain 创建一个冲突域
3.Switch
  • 在第二层
  • Connects machines on the same Broadcast Domain 连接同一广播域中的计算机
  • 可以检查第二层帧并确定目标(下一跳地址)
  • 分割冲突域
4.路由器 Router
  • 在第三层使用
  • 路由器将不同的广播域连接在一起
  • 检查IP包(端到端地址)
  • 每台机器的网络都被分配了一个IP地址
    IP地址是一个32位的数字(4字节)
    表示为4个小数,从0到255(IP地址是32位,表示为0到255之间的4个十进制数 E.g.192.168.1.15
  • 帮助选择最好的路径
5.网关 Gateway

• 通常是在网络所有权边界上的路由器。
• 管理交通政策
• Can inspect the whole packet.

6.服务器 Servers

• 服务器支持应用程序
• 它们在互联网上提供服务,如:Web page services 网页服务,File transfer 文件传输,Media Streaming

三.数字调试 Digital Modulation(物理层)

  1. 物理层解决的关键问题是发送(数字) bits 只使用(模拟)信号,这个过程叫做调制。为了发送数字信息,我们必须设计模拟信号来表示一个bit
  2. 在bits和代表它们的信号之间进行转换的过程称为数字调制
  3. 数字调制分为两种:
1.基带调制

1. baseband transmision 基带传输
直接将bits转换为信号的调制称为基带调制
这种方式信号将使用信号的整个带宽
调制方法:①Non Return to Zero(NRZ)不归零
② Non Return to Zero Invert(NRZI)(信号改变为1,不变为0)③Manchester Encoding 曼彻斯特编码:曼彻斯特编码的缺点是,由于时钟的原因,它需要的带宽是NRZ的两倍。
无论是NRZ 还是 NRZI 都存在时钟倾斜(如输入15个0,对方接受可能以为16个0)。时钟倾斜问题的解决办法就是时钟恢复:发送一个单独的时钟信号,然后,接收器只需与时钟信号保持同步。

2.带通调制

2.passband transmission 带通传输
调整载波信号的幅度、相位或频率以将位元转换成信号的方案
在这方案中,信号占有一个频率范围,这个频率范围大约是载波信号的频率

四.属性(一些量)

bandwidth 带宽
带宽是一组连续的频率中的上频率和下频率之差,通常以赫兹计算
给定宽度的任何band都可以承载相同数量的信息,无论该band位于频谱的什么位置
Bandwidth limits how fast we can change between states

五.数据链路层

1.在 物理层 研究 how digital information is transferred between two machines
在数据链路层研究 how to send messages between two machines. 这些 message 叫 frames 帧

2.数据链路层 主要功能:
①封装成帧
②差错检测
③调节数据流,使慢数据流不会被淹没

3.封装成帧(第一个功能)
帧在消息头(消息之前)和消息尾(消息之后)中添加了附加信息

找到新帧开头的三个方法:
Byte count 字节计数:让第一个数字对帧中字节数进行计数。最简单最有效的方法。但是,如果帧出错,则后面的帧都会一系列全部出错,出错后难以重新同步

Flag bytes with byte stuffing:让每个帧以特殊字节开始和结束。两个连续的标记字节flag byte表示一个帧的结束和下一个帧的开始。因此,如果接收器失去同步,它可以搜索两个标记字节来找到当前帧的结束和下一帧的开始。
当这个标记字节出现在帧中,用一个转义字符escape byte (ESC) 插入到标记字节前。接收者收到后,又将这个转义字符去掉,这个过程叫byte stuffing字节填充
缺点:添加这些字节会大大增加消息的大小

Flag bits with bit stuffing
每一帧以01111110位模式开始
•发送者:每当我们在数据中看到五个1时,我们就插入一个0
•接收器:每当我们看到五个1,我们就会移除下面的0
它与byte stuffing 思想一样,但开销更小
唯一问题就是最后的帧可以是任意位数,但字节填充总是字节数

4 .处理传输错误(第二个功能)
物理层所做的是接受一个原始的比特流,并尝试将它发送到目的地,如果信道是有噪声的,物理层会给它的信号增加一些冗余来降低误码率。这不能保证数据链路层接收到的比特流可能有错误。数据链路层负责检测并在必要时纠正错误
循环冗余检测法CRC:FCS是添加到数据后面的冗余码,而CRC是一种检错方法
差错家检测方法:

二维奇偶校验
• 如果有数据:1110001 1000111 0011001
• 我们形成一个3x7的数组,并添加行和列奇偶校验位
1 1 1 0 0 0 1 0
1 0 0 0 1 1 1 0
0 0 1 1 0 0 1 1
0 1 0 1 1 1 1 1
收方知道将接收到的位串形成 4 x 8 数组,然后对行和列都进行奇偶校验位检查
该方案可以检测行或列任意奇数位的错误:
①如果在一行中,它还可以检测偶数位错误(使用列奇偶校验)
②如果在单个列中,它还可以检测偶数位错误(使用行奇偶校验)
•该方案可以**纠正任何单个**比特错误
①如果接收者收到:
1 1 0 0 0 0 1 0
1 0 0 0 1 1 1 0
0 0 1 1 0 0 1 1
0 1 0 1 1 1 1 1
• 接收器可以检测到位置(1,3)的位出错,然后纠正它
②如果接收者收到:
0 1 1 0 0 0 1 0
1 0 1 0 1 1 1 0
0 0 1 1 0 0 1 1
0 1 0 1 1 1 1 1
• 接收机可以检测到比特错误的发生,但不能改正
③如果接收者收到:
0 0 0 0 0 0 1 0
1 0 0 0 1 1 1 0
0 0 1 1 0 0 1 1
0 1 0 1 1 1 1 1
• 接收机可以检测到比特错误的发生,但不能改正




海明码 Hamming Distance
两个码字W1和W2之间的代码距离是将一个码字转换为另一个码字所需的比特数,表示为:d(W1, W2)
eg:
W1 =10001001
W2 =10110001
d(W1, W2) = 3

5 .流量控制 Flow Control:让发送方发送速率不要太快,要让接收方来得及收
① 如果发送方传输帧的速度比接收方处理帧的速度快,接收方将被迫丢弃一些帧,哪怕这些帧没有错误。
②ACK每一个正确收到的帧
NAK每一个接收不正确的帧
(ACK(Acknowledgement),即确认字符
NAK(NegativeAcknowledgment)用于数字通信中确认数据收到但是有小错误的信号。 )
发送方保留未发送成功帧的副本,如果需要会重新发送
我们希望数据包(帧内)按顺序传递到接收方的网络层
流量控制
③流量控制的基本方法是让接收方控制发送方发送数据的速率,常见的方式有两种:停止-等待流量控制,滑动窗口流量控制



六.数据链路层–碰撞检测及恢复方法

1 . Contention Resolution 碰撞解决的三个方法

(1)将信道划分为独立的子信道,每个子信道用于一个传输
(2)允许节点随时发送数据,但它们必须检查是否有冲突。如果检测到碰撞,每个节点在再次传输之前会随机等待一段时间。
(3)节点在传输之前必须有一个令牌,当完成时,它将该令牌发送给它的邻居。令牌是表示允许传输的一段数据。只要所有节点都有机会传输,令牌通常可以传递给网络中的任何人

2 . CSMA/CD 协议
----减少碰撞的可能性和影响
1,多点接入
2,载波监听 Carrier Sensing
3,碰撞检测

令牌环形树

3 . CSMA/CA协议
这个协议包括:多点接入,载波监听,碰撞避免(CA)

在无线网区域,不能使用碰撞检测CD,原因:

  • 在无线网卡上实现碰撞检测CD,对硬件要求非常高
  • 即使能够在硬件上实现无线局域网的碰撞检测功能,但由于无线电波传播的特殊性(存在隐蔽站问题),实现碰撞检测意义不大

所以802.11无线局域网使用CSMA/CA协议,在CSMA/CD上把碰撞检测CD变成碰撞避免CA