计算机网络——链路层协议
一、 链路层的功能
可靠交付:在高差错的链路,如无线链路,可以进行可靠交付;对于其它的有线,可以是多余的;
流量控制:防止接收方的缓存区溢出,帧丢失;
差错检测与差错纠正:在硬件上实现了;
二、多路访问协议
信道划分协议: 时分复用(TDM)、频分复用(FDM)、 码分多址(CDMA);
随机接入协议:以信道的全部速率进行传输,遇到碰撞就停下来, 等待随机的时间后再次发送;
- 时隙ALOHA:把每个节点的发送时间开始都是固定的、同步的(如12点、1点、2点……, 而不会12.04发送),间隔时间为一个帧的传播时间;当没有碰撞时发送完成,当碰撞发生时,在下一个发送点以概率P进行发送;
- ALOHA: 原理与上面的相同,不一样的地方为:发送时间点不是固定的,而是随机的;
- 载波侦听多路访问(CSMA):每一个节点都会进行监听信道,如果有空闲的,就发送,否则等一段时间; 当加上碰撞(由于传播时延,会碰撞)检测时,变为了(CSMA/CD)了;
轮流协议:
- 轮询协议:各节点中有一个主节点,它会去轮流询问每一个节点是否需要发送数据,你如果发送就让让你发,你发完以后再问下一下;(会引入时延)
- 令牌传递协议:各节点中没有主节点了,而是有一个特殊的称为令牌的帧,这个令牌在各个节点之间轮流传递,有令牌的人就可以发送数据,发送完就传给下一个人;
三、地址解析协议:ARP与逆ARP
ARP表的样子,其中TTL表示为过期的时间 ,它们是有时效的;

一个主机的ARP表中想要得到一个IP的MAC时,它可以这么做:
- 1. 发送一个ARP的请求包,其中包括源IP与MAC、目的的MAC为广播MAC,即全为1,目的的IP地址就是要查询的IP地址;
- 2. 这样所以的 其它主机都可以解析这个请求包,查看是否与自己的IP对应,如果对应则回复人家,如果不对应,直接忽略就可以了;
四、以太网
帧结构:
- 前同步码(7个字节10101010和1个字节10101011):
; - 目的地址与源地址都是MAC;
- 类型:这是网络协议分层设计减小耦合度的精心设计,这允许以太网多路复用网络层协议,可以支持除了IP协议之外的其他不同网络层协议,或者是承载在以太网帧里的协议(如ARP协议)。接收方根据此字段进行多路分解,从而达到解析以太网帧的目的,将数据字段交给对应的上层网络层协议,这样就完成了以太网作为数据链路层协议的工作。
- 数据:在交换式以太网中,一台主机向局域网中的另一台主机发送一个IP数据报,这个数据报封装在以太网帧结构中作为其有效载荷,以太网的最大传输单元(MTU)是1500字节,也就是限制了一个IP数据报最大为1500字节,如果超过1500字节,就要启用IP协议的分片策略进行传输。同时,数据字段最小长度为46字节,如果不够必须要填充到46字节。如IP数据报和填充部分会被网络层利用IP数据报首部的长度字段去除相关填充。
- CRC:循环冗余校验;
整体结构:

五、交换机
工作在数据链路层,可以进行过滤志转发,连接以太网;
六、 点对点的协议,PPP
使用到的协议:链路控制协议 (LCP)、 网络控制协议(NCP)、PPP扩展协议;
http://www.cnblogs.com/gtarcoder/p/6259105PPP.html
计算机网络——链路层协议的更多相关文章
- 计算机网络七层协议模型 “开放系统互联参考模型”,即著名的OSI/RM模型(Open System Interconnection/Reference Model)
计算机网络七层协议模型 作者:Ryan 时间:2013年10月7日 一.物理层(Physical Layer) OSI模型的最低层或第一层,规定了激活.维持.关闭通信端点之间的机械特性.电气特性 ...
- 计算机网络-链路层(4)WiFi:802. 11无线LAN
有几套有关无线LAN 的802. 11标准,包括802.11b.802.11a和802.11g. 802.11g是至今为止最为流行的技术.一些双模式(802.11a/g)和三模式(802.11a/b/ ...
- 计算机网络-链路层(2)多路访问控制协议(multiple access control protocol)
单一共享广播信道,如果两个或者两个以上结点同时传输,会互相干扰(interference) 冲突(collision):结点同时接收到两个或者多个信号→接收失败! MAC协议采用分布式算法决定结点如何 ...
- H3C 链路层协议
- TCP/IP协议学习(六) 链路层详解
学习知识很简单,但坚持不懈却又是如此的困难,即使一直对自己说"努力,不能停下"的我也慢慢懈怠了... 闲话不多说,本篇将讲述TCP/IP协议栈的链路层.在本系列第一篇我讲到,TCP ...
- 《TCP/IP详解卷1:协议》第2章 链路层-读书笔记
章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...
- TCP/IP协议族之链路层(二)
TCP/IP学习记录,如有错误请指正,谢谢!!! TCP/IP协议族之链路层(二) 链路层是最底层协议,主要有三个目的: 1. 为IP模块发送和接收IP数据报 2. 为ARP模块发送ARP请求和接收A ...
- <再看TCP/IP第一卷>关于链路层的知识细节及相关协议
在TCP/IP协议族中,链路层的主要有三个目的: (1)为IP模块发送和接受数据报 (2)为ARP模块发送ARP请求和接受ARP应答 (3)为RARP发送RARP请求和接受RARP应答 TCP/IP支 ...
- 《TCP/IP详解卷1:协议》——第2章:链路层(转载)
1.引言 从图1-4可以看出,在TCP/IP协议族中,链路层主要有三个目的: (1)为IP模块发送和接收IP数据报: (2)为ARP模块发送ARP请求和接收ARP应答. (3)为RARP发送RARP请 ...
随机推荐
- OpenCV中图像算术操作与逻辑操作
OpenCV中图像算术操作与逻辑操作 在图像处理中有两类最重要的基础操作各自是图像点操作与块操作.简单点说图像点操作就是图像每一个像素点的相关逻辑与几何运算.块操作最常见就是基于卷积算子的各种操作.实 ...
- .NET MVC+ EF+LINQ 多表联查VIEW显示列表
1.VIEW 页面显示代码 <link href="~/Content/bootstrap.css" rel="stylesheet" /> < ...
- (原创)发布一个c++11开发的轻量级的并行Task库TaskCpp
TaskCpp简介 TaskCpp是c++11开发的一个跨平台的并行task库,它的设计思路来源于微软的并行计算库ppl和intel的并行计算库tbb,关于ppl和tbb我在前面有介绍.既然已经有了这 ...
- tensorflow笔记1:基础函数、embedding_lookup
函数一:tf.nn.embedding_lookup() ERROR: I get this error: TypeError: Tensors in list passed to 'values' ...
- 【嵌入式】使用Cross Toolchain构建交叉工具链
Preface 前面编译linux内核的时候,用各种cross版本都不行啊,真是纠结,于是就想着自己也要会编译交叉工具的方法,然后各种尝试,各种问题啊,最后还是没解决(还有其它事情),步骤我都走熟了, ...
- golang将interface{}转换为struct
项目中需要用到golang的队列,container/list,需要放入的元素是struct,但是因为golang中list的设计,从list中取出时的类型为interface{},所以需要想办法把i ...
- Python爬取中国票房网所有电影片名和演员名字,爬取齐鲁网大陆所有电视剧名称
爬取CBO中国票房网所有电影片名和演员名字 # -*- coding: utf-8 -*- # 爬取CBO中国票房网所有电影片名 import json import requests import ...
- SparkStreaming python 读取kafka数据将结果输出到单个指定本地文件
# -*- coding: UTF-8 -*- #!/bin/env python3 # filename readFromKafkaStreamingGetLocation.py import IP ...
- js中取小数整数部分函数;取小数部分
1.丢弃小数部分,保留整数部分 parseInt(23.56); 结果:23 2.向上取整,有小数就整数部分加1 Math.ceil(23.56) 结果:24 3,四舍五入. Math.round(2 ...
- mysql查询字段为null 返回0
SELECT IF(AVG(字段) IS NULL,0, 字段) as 重命名 From xxx