计算机网络笔记


计算机网络第七版-谢希仁 个人整理笔记

一.概述

网络的组成

计算机网络由若干 结点(node) 和 链路(link) 组成

互联网的组成:边缘部分(资源子网)+核心部分(通信子网)

边缘部分:连上网的主机,即端系统

互联网服务提供者ISP(Internet Service Provider)

端系统通信方式

C/S客户服务器方式 P2P对等方式

C/S:C请求服务,S提供服务 (Client,Sever)

P2P:对等服务,一个主机既可以请求服务,也可以向别的主机提供服务 (peer to peer)

互联网核心部分的交换技术

电路交换:建立连接-通话-释放链接 通话期间始终占用端到端的通信资源直到链接被释放,效率低

报文交换:存储转发技术,一整个报文传输,全部传输到结点后再通过转发表查找下一结点,时延较长

分组交换:存储转发技术,把一整个报文分成若干分组,每个分组传输到相邻的结点上通过转发表到下一个结点,效率高

网络类别

按范围划分

广域网WAN(Wide Area Network)

城域网MAN(Metropolitan Area Network)

局域网LAN(Local A N)

个人区域网PAN(Person A N)

按使用者分类

公用网

专用网

网络性能指标

速率:数据传输速率,往往指额定速率

带宽:通道传输数据的能力,最高数据率

吞吐量:单位时间内通过网络的实际数量

时延:数据从一端到另一端的传播时间 分为:发送时延-传播时延-处理时延-排队时延

时延带宽积:以比特为单位的链路长度

RTT:数据往返的时间

利用率:利用率过高则时延很大 D当前时延,D0空闲时时延,U利用率 D=D0/1-U

协议三要素

语法:数据与控制信息的格式

语义:需要发出何种信息,完成何种动作,做出何种相应

同步:事件实现顺序的说明

计算机网络体系结构

网络的体系结构:计算机网络的各层及其协议的集合/计算机网络的功能的精确定义

OSI七层协议体系结构

记忆口诀:物联网淑慧试用 物理层-数据链路层-网络层-传输层-会话层-表示层-应用层

TCP/IP四层体系结构

网络接口层-网际层-传输层-应用层

五层体系结构

物理层-数据链路层-网络层-传输层-应用层

应用层(application layer):进程间通信,传输单元为报文(message)

传输层(transport layer):为进程通信提供通用的数据传输服务,TCP传输单位报文段(segment),UDP为用户数据报

网络层(network layer):为主机提供通信服务,传输单位为IP数据报或者分组(哪一层都可以以分组为单位)

数据链路层(data link layer):主机间的数据传输在链路上,数据链路层将IP数据包封装成帧,传输单位为帧(frame)

物理层(physical layer):传输在物理层上的数据为比特(bit) 0 1

一些概念

对等层之间的数据单位为 协议数据单元:PDU(Protocol Data Unit)

协议栈:协议的层次结构像栈

实体:可以接收或发送信息的硬件或软件进程

协议是控制两个对等实体进行通信的规则的集合

协议是水平的 服务是垂直的

网络各层是相互独立的,上层通过调用下层的接口来获得下层提供的服务

二.物理层

物理层的任务

确认(1)机械特性 (2)电气特性 (3)功能特性 (4)过程特性

数据通信系统三部分

源系统-传输系统-目的系统

模拟信号:也称连续信号

数字信号:也称离散信号

信道的信息交互方式

(1)单工通信 (2)半双工通信 (3)全双工通信

来自信源的信号为基带信号如文字,图片必须调制

数字信号-数字信号的调制为基带调制,也叫编码

数字信号-模拟信号的调制使用载波,称为带通调制

常见编码方式

(1)不归零制 (2)归零制

(3)曼彻斯特编码:看周期中心向上还是向下跳变

(4)差分曼彻斯特编码:边界有跳变为0没有则为1

带通调制方法

调幅 调频 调相

信道的极限容量

奈氏准则:理想低通信道的最高码元传输速率C = 2W Baud 即 2Wlog2V (b/s) W是带宽,V 是几种码元

香农公式:

信噪比(db)= 10log10(S/N)(db)

信道的极限数据传输速率C = Wlog2(1+S/N)(b/s)

物理层下面的传输媒体

导引型:双绞线 同轴电缆 光缆

非导引型:无线电波

信道复用技术

频分复用(FDM):按频率占用不同带宽资源

时分复用(TDM):不同时间占用信道

统计时分复用(STDM):使用集线器连接各个用户检测各个用户是否缓存满一个帧若有则发送没有就跳过

波分复用(WDM):光的频分复用,分成不同波长

码分复用(CDM):也叫码分多址CDMA,不同码型相互正交

宽带接入技术

(1)ADSL非对称数字用户线:下行速度大于上行速度

(2)光纤同轴混合网(HFC网):信号通过光纤传输到光纤节点,再通过同轴电缆传输到有线电视网用户,非对称,采用共享式的传输方式

(3)FTTx技术:意谓“光纤到x”,如FFTH即光纤到户,只有在光纤进入用户家门后才将光信号转换为电信号。

三.数据链路层

数据链路层的两种信道

点对点信道:一对一的通信方式

广播信道:一对多的通信方式

链路与数据链路

链路:一个结点到相邻结点的物理链路

数据链路:加上通信协议的链路

三个基本问题

封装成帧:给一段数据添加首部与尾部进行帧定界

透明传输:字节/字符填充 在控制字符前插入转义字符

差错检测:CRC循环冗余检验,无错接收有错丢弃

点对点协议PPP

PPP的帧格式

首部:F(7E)+A(FF)+C(03)+协议

信息部分:IP数据报≤1500B

尾部:FSC(CRC)+F(7E)

字节填充

出现F(0x7E)时用转义符0x7D变成(0x7D,0x5E)

零比特填充

出现5个连续的1后面添上一个0

PPP协议的工作状态

用户接入ISP后向其发送LCP协议建立LCP连接接着NCP给用户分配IP;通信结束是NCP释放连接收回IP然后释放链路层连接最后释放物理层连接

以太网的两个标准

DIX Ethernet V2

IEEE 802.3

适配器(网卡)的作用

主要是把接收到的串行传输的数据转换为在总线上并行传输的数据,MAC地址在网卡中而IP地址在CPU中

CSMA/CD协议

要点:多点接入、载波监听、碰撞检测(先听后发 边听边发 冲突停止 延迟重发)

单程传播时延为τ则争用期最多为2τ

二进制指数退避算法 r*2τ

最小帧长=2τ*数据传输速率

MAC

MAC地址是物理地址唯一是一种标识符

MAC帧格式

目的地址+源地址+类型+IP数据报+FCS

IP数据报长度:45~1500B

控制信息长度:18B

MAC帧有效长度:64~1518B

扩展以太网

物理层

1、光纤:延长距离

2、集线器:多层次结构 缺点:碰撞域也变大了

数据链路层

1、网桥:对MAC帧进行转发和过滤

2、交换机:可以看成多接口的网桥,全双工,并行,有交换表

交换机的自学习算法:记住源地址 判断目的地址 若存在直接转发 不存在则广播

解决自学习过程中的无限制兜圈问题:生成树协议STP 物理环状-逻辑树状(阻塞一些接口)

虚拟局域网VLAN

物理上不在一个局域网;逻辑上在一个局域网(通过VLAN标签实现),在有VLAN标签后不同VLAN标签的机器不能通过数据链路层通信(VLAN标签在首部中)

高速以太网

100BASE-T(100:100Mb/s;BASE:基带信号;T:双绞线)

四.网络层

网络层提供的两种服务

虚电路:像打电话一样,先建立连接占用资源然后沿着建立的虚电路发送分组,结束后释放,可靠传输

数据报:不用先建立连接,每个分组独立发送,无连接,尽最大努力交付

网际协议IP

地址解析协议ARP

网际控制报文协议ICMP

网际组管理协议IGMP

分类的IP地址

IP地址=网络号+主机号 共32位(IPV4)

A类地址8位网络号 0 1-126 2^7-2 (0,127)

B类地址16位网络号 10 128.1-191.255 2^14-1 (128.0)

C类地址24位网络号 110 192.0.1-223.255.255 2^21-1 (192.0.0)

D类地址 1110 用于多播

E类地址 1111 保留

网络号全0表示本网络,127.0.0.0用于环回测试

主机号全0表示连接到的网络地址,全1表示该网络的所有主机

IP地址与硬件地址

IP地址是逻辑地址,硬件地址是物理地址

网络层及以上只看到IP地址,数据链路层只能看见MAC地址

地址解析协议ARP

ARP:IP地址~MAC地址

ARP高速缓存中存放一个IP~MAC的映射表,查表看有无对应地址,若有直接转换,若无则发送广播请求,若局域网内主机是这个地址则返回一个单播,此时把地址映射写入表中

IP数据报格式

首部20字节:版本4b+首部长度4b+区分服务8b+总长度16b+标识16b+标志3b+片位移13b+生存时间8b+协议8b+首部检验和16b+源地址32b+目的地址32b

IP检验和仅检验IP数据报的首部

IP分组转发流程

根据目的IP地址得出网络地址N,若N直接连接在路由器上则直接交付,若路由表中有N的特定主机路由则交付特定主机路由,若有到达N的路由则交付给下一跳路由,若以上都没有则交付给默认路由,若无默认路由则报告分组转发出错

划分子网和构造超网

划分子网:把物理网络划分成若干子网,除本网络看不见子网,借主机号作为子网号

IP地址 = 网络号+子网号+主机号

子网掩码:连续的1表示 ,1为网络号0为主机号

子网地址 = IP地址 AND 子网掩码

使用子网掩码的分组转发:在分组转发过程中加上算子网地址、比对的过程

无分类编址CIDR(构造超网)

CIDR消除了A、B、C类网络及划分子网的概念

IP地址 = 网络前缀+主机号 并使用斜线记法/ /后为网络前缀的位数

使用地址掩码其中1是网络前缀

最长前缀匹配:两个掩码位数不一样且都匹配时选最长的

使用二叉线索树查找路由表

网际控制报文协议ICMP

ICMP允许主机或路由器报告差错和异常,ICMP在IP数据报中作为数据部分

ICMP分为差错报告报文和询问报文

ICMP应用:PING 与 traceroute

内部网关协议RIP

RIP是一种分布式基于距离向量的路由选择协议,使用UDP传送,仅和相邻路由交换信息,距离为16不可达

距离向量算法:目的网络为N,若表中之前没有则添加,若有且下一跳路由器没变则更新,若有且下一跳路由器不同则选择距离最短的

内部网关协议OSPF

开放最短路径优先OSPF:使用洪泛法向所有相邻路由发送信息,相邻路由再将此信息发送到相邻路由最终所有路由都有了,建立了一个全网的拓扑结构图,只有链路状态变化时才用洪泛法,使用IP数据报传送,度量选择灵活可以是费用、距离、时延等

外部网关协议BGP

BGP寻找一条能够到达目的网络且比较好的路由,采用路径向量选择协议,用TCP传送

IPV6

IPV6地址128位,增加了任播,安全性更高

网际组管理协议IGMP

IGMP让连接在本地局域网上的路由器知道本局域网是否有主机参加多播组

虚拟专用网VPN

使用只在本机构有效的专用地址,不能直接和外部连接

网络地址转换NAT

专用网地址通过安装了NAT软件的路由器,把专用网地址改为公网地址通信,且只能从专用网向公网转换,所以专用网内的主机不能当服务器

多协议标记交换MPLS

MPLS三个特点:1、支持面向连接的服务质量 2、支持流量工程 ,平衡负载 3、支持虚拟专用网VPN

MPLS在入口结点给每个IP数据报打上“标记”,然后根据标记在链路层用硬件转发加快转发效率

五.运输层

概述

运输层提供应用程序之间的逻辑通信,主要通过TCP和UDP协议实现,TCP是面向连接的可靠服务,而UDP是面向无连接的不可靠服务但传输效率优于TCP

端口代表着进程,是软件端口,只具有本地意义,端口号16位允许有65535个不同端口号

用户数据报协议UDP

UDP在IP的服务上加上了复用分用的功能及差错检测的功能

UDP特点:1、UDP是无连接的,减少了时延,UDP不保证可靠交付 2、UDP是面向报文的应用程序给的报文UDP不做处理,保留其长度一次交付一个完整的报文 3、UDP没有拥塞控制 4、UDP支持一对一、一对多、多对一、多对多的通信 5、UDP首部开销小,只有8字节

UDP的首部格式:源端口+目的端口+长度(首+数据报)+检验和

UDP有12字节的伪首部仅仅为了计算检验和

UDP的检验和把首部和数据部分一起都检验

传输控制协议TCP

TCP特点:1、TCP是面向连接的,先建立连接,再通信,通信结束释放连接 2、TCP连接只能有两个端点即只能一对一通信 3、TCP提供可靠交付的服务,不重复不丢失不失序 4、TCP提供全双工通信且两端设有缓存 5、TCP面向字节流,即TCP把应用程序发送的数据块看成一连串的字节序列

TCP连接的端点叫套接字socket socket=(IP地:端口号) 例192.3.4.5:80 TCP连接唯一地被通信两端的两个套接字确定

可靠传输的工作原理

停止等待协议:每发完一个分组,停止发送等待对方确认,收到确认后发送下一个分组

一段时间没有确认则认为丢失,重传,等待确认的时间用超时计时器设置

确认丢失了则发送方重传,接收方收到重复的数据则丢弃,再发送一个确认

发送方收到迟到的确认什么都不做

上述传输机制称为自动重传请求ARQ

由于停止等待协议利用率太低于是使用连续ARQ协议和滑动窗口协议

连续ARQ:累积确认+Go-back-N(回退N)

TCP的首部格式

TCP首部20个字节+可变长度

TCP首部:源端口+目的端口+序号+确认号+数据偏移+保留+紧急URG+确认ACK+推送PSH+复位RST+同步SYN+终止FIN+窗口+检验和+紧急指针+选项

TCP检验和包括首部和数据部分也加上12字节的伪首部

TCP可靠传输的实现

滑动窗口:分发送窗口和接收窗口,1、发送窗口内的数据全都可以在没收到确认的情况下发出去,但是只有等到确认窗口才能继续向前移,若没收到确认则重新发送 2、接收窗口对期望收到数据的最高序号进行确认,在把数据发送给主机后才继续向前移

TCP的流量控制

流量控制:让发送方不要发的太快,要让接收方来得及接收,用rwnd接收窗口实现

接收窗口告诉发送方最多发送多少字节,若接收窗口为0则发送方启动持续计时器,时间到则发送探测报文段防止死锁

糊涂窗口综合征:进程每次从缓存中接收1字节数据,然后接收方把窗口设置为1字节,这样不停进行1字节的数据传送效率很低

解决糊涂窗口综合征:1、让接收方等待一段时间到缓存有足够空间时再发送确认报文 2、发送方把数据累积成足够大的报文段再发送

TCP的拥塞控制

拥塞控制:防止过多数据注入网络中,使网络能够承载现有负荷

慢开始和拥塞避免

设置一个拥塞窗口cwnd,使发送方的发送窗口等于拥塞窗口,慢开始算法使cwnd初始为1个报文段每次确认后cwnd加倍。再设置一个慢开始门限ssthresh,当cwnd≥ssthresh时停止慢开始使用拥塞避免算法,拥塞避免算法在每次传输后使cwnd加1

快重传和快恢复

快重传:发送方收到连续3个重复确认则立即进行重传

快恢复:触发快重传后使门限值ssthresh=cwnd/2 同时设置cwnd=ssthresh并执行拥塞避免算法

发送窗口上限=Min[rwnd,cwnd]

主动队列管理AQM

早期的路由队列使用先进先出FIFO算法,经常造成尾部丢弃,最终可能导致全局同步(整个网络通信量突然下降很多然后又同时增大)

为防止全局同步,使用AQM在队列满前主动丢弃分组

曾经用随机早期检测RED 两个参数:队列长度最小门限、队列长度最大门限

1、若平均队列长度小于最小门限则把新到来的分组放入队列

2、若平均队列长度大于最大门限则把新到来的分组丢弃

3、若平均队列长度在最大门限与最小门限之间则按概率p随机丢弃新到来的分组

TCP连接管理:三次握手与四次挥手

三次握手:C(Client)向S(Sever)发送请求报文段,SYN=1,seq=x;S收到后发送确认SYN=1,ACK=1,seq=y,ack=x+1;C收到后再次确认ACK=1,seq=x+1,ack=y+1此时连接建立

为什么最后C还要确认?

防止失效的连接突然传送到S产生错误(C的第一个请求滞留在网络中,重传后建立了连接,在连接释放后 这个滞留的连接到达S又连接上了而此时C已经不需要服务了导致资源浪费)

什么是SYN洪泛攻击?

C发送第一个请求连接报文段,等待S的确认,S确认后C不再发送报文段,使TCP连接处于半挂起状态这样S就会不停发送重传报文段;攻击者向S发送大量的这样TCP连接通过这种方式浪费服务器资源最终可能导致服务器死机

四次挥手:C请求释放连接的报文段,使终止位FIN=1,seq=u;S确认请求ACK=1,seq=v,ack=u+1;然后S继续传输数据,若S数据传输完毕则发送释放连接报文FIN=1,ACK=1,seq=w,ack=u+1;C收到后确认释放ACK=1,seq=u+1,ack=w+1;然后进入等待状态在2MSL(MSL为最长报文寿命)后成功释放连接

为什么要等2MSL?

1、保证最后的确认报文到达S没有发生丢失 2、防止遗留的报文重新与S建立连接

保活计时器:S防止C出现故障,若在一段时间后(如2h)没传送数据则每隔一段时间发送探测报文段,若10个探测都没反应则认为C故障,关闭连接

六.应用层

域名系统DNS

DNS把域名转换为IP地址 www.baidu.com—39.156.69.79 基于UDP

域名结构:三级域名.二级域名.顶级域名

域名解析过程:主机向本地域名服务器进行递归查询,本地服务器向DNS服务器迭代查询,先问根服务器,再下一级服务器最后查到返回给主机IP,为提高查询速度在域名服务器中加上了高速缓存,查过的域名保存在缓存中,下次查询直接返回IP

文件传输协议FTP

FTP基于TCP TFTP基于UDP 都基于C/S模式

FTP工作原理

登陆:1、FTP地址,用户名,密码 2、匿名登陆

一个FTP服务器可以为多个客户端提供服务,FTP服务器进程分为两部分:1、接收请求的主进程(打开21端口) 2、处理请求的子进程(控制进程+数据进程)

远程中断协议TELNET

TELNET能将用户的击键传到远程主机,也能将远程主机的输出返回到用户屏幕

为了适应差异TELNET定义了NVT格式,客户软件把命令转换为NVT格式传输并交给服务器,服务器把NVT格式转换成远程主机所需的格式

万维网WWW

万维网是一个大规模的、联机式的信息储藏所;万维网是一个分布式的超媒体系统,是超文本系统的扩充

万维网用统一资源定位符URL来标志各种文档

万维网用超文本传送协议HTTP通过TCP实现可靠的连接传送

万维网用超文本标记语言HTML使页面显示出来并且风格统一

URL: 协议://主机:(端口/路径) http://www.baidu.com 协议http 主机:www.baidu.com

超文本传送协议HTTP

HTTP是面向事物的应用层协议,是万维网上可靠交换文件的基础

HTTP的操作过程

服务器进程不断监听TCP的80端口,发送是否有浏览器请求连接;监听到请求并建立连接之后浏览器向服务器发送请求;服务器返回响应;最后释放连接;浏览器和服务器的请求与响应的交互必须遵循HTTP的格式与规则

代理服务器

代理服务器是一种网络实体,又称为万维网高速缓存;代理服务器把最近的一些请求和响应暂存在本地磁盘中,新请求若在暂存中则返回,不用再访问互联网资源,减少了互联网上的通信量,减小了时延。

电子邮件

电子邮件的两个标准:简单邮件传输协议SMTP和互联网文本报文格式

一个电子邮件系统有三个构件:用户代理、邮件服务器、邮件发送协议(SMTP)、邮件读取协议(POP3)

简单邮件传输协议SMTP

SMTP建立TCP连接;不使用中间服务器 、明文不保密、只能传送ASCII码数据

邮件读取协议POP3

POP3的特点:用户从POP3服务器读取邮件后,服务器就把邮件删除,邮件仅存在客户端内

网际报文存储协议IMAP

IMAP的特点:联机协议,用户操作服务器邮箱像操作本地邮箱一样,不发出删除指令不会删除,可以在不同的主机上随时阅读邮件,客户端更新与邮箱同步

通用互联网邮件扩充MIME

MIME在SMTP格式上扩充定义了传送非ASCII码的编码规则,把用户传送的非ASCII码转化为ASCII码给SMTP传送

动态主机配置协议DHCP

DHCP可以自动配置新加入网络的设备的IP,基于UDP

DHCP配置过程:主机启动后发送发现报文,目的地址全为1,网上所有设备都收到这个报文只有DHCP服务器回答并返回一个提供报文并为该主机分配IP;这个IP是临时的,用户用IP的时间称为租用期

简单网络管理协议SNMP

网络管理包括对网络资源的测试、监视、控制等;管理员是C,被管理设备是S;SNMP基于UDP

SNMP通过“读”操作检测被管对象的状况,通过“写”操作改变对象状况

SNMP由三部分组成:1、SNMP本身负责读取和改变各代理中的对象名及其状态的数值 2、管理信息结构SMI负责定会命名对象和定义对象类型的通用规则 3、管理信息库MIB,在被管理的实体中创建了命名对象,并规定了其类型

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值