计算机网络大纲

第一章 概述

1. 互联网发展的三个阶段

第一阶段:从单个网络 ARPANET 向互联网发展的过程。
第二阶段:形成了三级结构的互连网。分为主干网、地区网和校园网。主要覆盖美国的大学和研究所。
第三阶段:逐渐形成了多层次ISP结构的互连网。如下图:

在这里插入图片描述

图1-1 计算机多层次ISP结构和IXP

2. 计算机体系结构

在这里插入图片描述

图1-2 计算机体系图

各层的说明与作用:

1、应用层:体系中的最高层,比较熟悉的域名DNS协议,HTTP协议,SMTP协议都在该层。

2、运输层:主机之间提供数据传输服务的,主要有TCP协和UDP协议。

3、网络层:为网上的不同主机提供通信服务,使用IP协议。

4、数据链路层:对网络上的传输信息的检错与纠错,协议最复杂的一层。

5、物理层:物理层为设备之间的数据通信提供传输媒体及互连设备,为数据传输提供可靠的环境。

参考:TCP协议
UDP协议

第二章 物理层

1. 通信基础概念

1、通信系统分为三大部分:源系统,传输系统和目的系统。

图2-1 计算机通信模型

2、信道相关

信噪比(dB)= 10 lg(S/N)(dB)
香农公式:信道的极限传输速率C是
C = W log2(1 + S/N)(bit/s)
W是信道的贷款,单位是HZ,S是信道内所传信号的平均功率,N是信道内的高斯噪音功率。

参考:信噪比和香农公式

第三章 数据链路层

1. 数据链路的基本概念

什么是数据链路层?假设一个场景,主机H1,通过连接路由器R1,R2,R3然后到主机H2进行上网。

那么,链路指的是一个结点到另一个结点之间的物理线路。
而数据链路除了物理线路之外,还包括了一系统通信的协议控制信息的传输。

2. 协议三个问题

1、封装成帧
意思是在一段数据前后分别添加首部和尾部,比如首部为SOH开始符,尾部为EOT结束符。
当接收到某个数据出现差错时,直接收到了SOH或者只有EOT说明数据已经不完整,
就可以很清楚的知道该重新发送哪个帧。如图完整的帧包括:
SOH装在帧中的数据EOT
2、透明传输
这里透明的含义指的是将某些事物看起来像不存在一样.
比如:帧数据中出现了像SOH和EOT控制字符相同的数据,数据传输过程中很可能错误的判断帧的边界,
从而导致帧数据的不完整。

于是,解决该问题的方法是:在在数据中出现SOH或EOT控制字符前加上转义字符ESC,
这就保证了数据的透明传输。


3、差错检测
这个内容比较多,这里不做深究,大概意思是:为了保证数据的正确性,防止比特0变为1等情况发生,
在数据后面添加冗余码。

具体请参考:
差错检测

第四章 网络层

1. 网际协议IP

网际协议IP是TCP/IP协议中最重要的协议之一。与之相关的协议还有:
地址解析协议(ARP)
网际控制报文协议(ICMP)
网际组管理协议(IGMP)

2. 地址解析协议

APR协议的作用是:在已知IP地址时,需要找到相应的硬件地址。

每台主机都有ARP高速缓存,里面有各主机和路由器的IP地址到硬件地址的映射表。

同一局域网下

如果主机A向主机B发送IP数据报,首先从高速缓存中查询是否有B的mac地址。
如果没有,ARP进程发送广播,而只有指定IP才可接收到广播进行回复。

不同网络下

主机A先找到本网下的路由器,接下来的工作右路由器完成

3. IP数据报格式

格式如下图:

在这里插入图片描述

第五章 运输层

1. UDP和TCP

用户数据报协议UDP是无连接的,是面向报文的不可靠交付,还有首部开销小、没有阻塞控制等特点。
传输控制协议TCP是面向连接的,提供可靠交付等特点。

其中他们的头部分别如下图:

在这里插入图片描述

图5-1 UDP头部

在这里插入图片描述
图5-2 TCP头部

2. TCP连接

TCP把连接作为最基本的抽象,每一条TCP连接有两个端点。端点叫做套接字(Socket),
是由IP地址+端口号组成,比如127.0.0.1:8080。
注意:这里的socket与访问联网的应用编程接口API socket不同。

3. TCP三次握手

过程:

(1)第一次握手:Client将标志位SYN置为1,随机产生一个值seq=J,并将该数据包发送
给Server,Client进入SYN_SENT状态,等待Server确认。
(2)第二次握手:Server收到数据包后由标志位SYN=1知道Client请求建立连接,
Server将标志位SYN和ACK都置为1,ack=J+1,随机产生一个值seq=K,并将该数据包发送给Client
以确认连接请求,Server进入SYN_RCVD状态。
(3)第三次握手:Client收到确认后,检查ack是否为J+1,ACK是否为1,如果正确则
将标志位ACK置为1,ack=K+1,并将该数据包发送给Server,Server检查ack是否为K+1
,ACK是否为1,如果正确则连接建立成功,Client和Server进入ESTABLISHED状态,完
成三次握手,随后Client与Server之间可以开始传输数据了。

4. TCP四次挥手

过程:

(1)第一次挥手:Client发送一个FIN,用来关闭Client到Server的数据传送,Client进入FIN_WAIT_1状态。
(2)第二次挥手:Server收到FIN后,发送一个ACK给Client,确认序号为收到序号+1(与SYN相同,一个FIN占用一个序号),Server进入CLOSE_WAIT状态。
(3)第三次挥手:Server发送一个FIN,用来关闭Server到Client的数据传送,Server进入LAST_ACK状态。
(4)第四次挥手:Client收到FIN后,Client进入TIME_WAIT状态,接着发送一个ACK给Server,确认序号为收到序号+1,Server进入CLOSED状态,完成四次挥手。

第六章 应用层

1. 域名系统

域名系统是用来把人们容易记忆的机器名称转换为IP地址

其中域名空间如下:

在这里插入图片描述

2. 文件传输协议

1. FTP

工作原理:

FTP使用客户端服务器方式,一个服务器进程可以为多个客户端进程提供服务。
服务器进程右两大部分组成,一个是主进程,负责接收新的请求,另外有若干个从属进程,负责处理单个请求。

工作情况如图:

在这里插入图片描述

2. TFTP

TCP/IP协议族中的TFTP是简单文件传输协议,可用于UDP环境,而且占用内存较小

3. DHCP

DHCP:动态主机配置协议,提供了即插即用联网机制,保证了一台计算机加入网络时
获取IP地址而不用手工配置。
例如:局域网自动分配IP地址。

4. P2P

P2P对等网络。
各台计算机功能相同,无主从之分。
整个网络不依赖专有服务器。
消除了中间商,沟通更加便捷

具有以下特点:

非中心化;
可扩展性;
健壮性;
高性价比;
隐私保护;
负载均衡。

第七章 网络安全

1. 数字签名

过程:A向B发送消息时,先通过签名算法对消息进行签名加密。B收到消息后,执行
解密算法对消息进行解密,如果能还原出原消息,证明消息没被篡改。


签名的作用不是对消息进行保密,而是对消息进行核实。

如图示:

在这里插入图片描述

在生产中,比如微信支付,双方确定一个固定随机字符串key,防止被他人知道。
订单发送过程前,先把订单+key进行加密获得sign,然后和订单一同发送给微信端。
微信端接收到订单详情和sign,首先也对订单+key进行加密获取mySign,最后,
通过比较sign和mySign来确定订单是否在传输过程中被篡改。
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值