计算机网络笔记(自用)

OSI 7层

应用层: 能够产生网络流量能够和用户交互的应用程序 如QQ。
表示层: 数据的加密,压缩;属于开发人员需要考虑的问题。
会话层: 服务和客户端建立的会话 查木马 netstat -nb

传输层: 可靠传输建立会话 不可靠传输 流量控制

网络层: IP地址编址 选择最佳路径

数据链路层: 输入如何封装 添加物理层地址 MAC

物理层: 规定电压,接口标准

网络排错–从底层到高层

网络安全和OSI参考模型

  • 物理层安全
  • 数据链路安全
  • 网络层安全
  • 传输层
  • 应用层安全

物理层

物理层结局如何在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。
物理层的主要任务描述为:确定与传输媒体的接口的一些特性,即:

  • 机械特性:例接口形状,大小,引线数目
  • 电气特性:例规定电压范围(-5v到+5v)
  • 功能特性:例规定-5V表示0,+5V表示1
  • 过程特性:也称规程特性,规定建立连接时各个相关部件的工作步骤
    在这里插入图片描述

2.2 数据通信的基础知识

在这里插入图片描述
第七版定义:

  • 曼彻斯特编码:位周期中心的向上跳变代表0,位周期中心的向下跳变代表1.也可以反过来定义
  • 差分曼彻斯特编码:在每一位的中心初始终都有跳变。位开始边界又跳变代表0,而未开始边界没有跳变代表1.

数据链路层

基本概念

数据发送模型:
在这里插入图片描述
数据链路层使用的信道主要有以下两种类型:

  • 点对点信道。这种信道使用一对一的点对点通信方式。
  • 广播信道。这种信道使用一对多的广播通信方式,因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发送。
    在这里插入图片描述
    链路与数据链路
  • 链路(Link)是一条点到点的物理线路段,中间没有其他任何的交换结点
    • 一条链路只是一条通路的一个组成部分
  • 数据链路(data link)除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路
    • 现最常用的方法是使用网络适配器来实现这些协议的硬件和软件
    • 一般的适配器都包括了数据链路层和物理层这两层的功能

三个基本问题

封装成帧

  • 封装成帧就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。确定帧的界限
  • 首部和尾部的一个重要作用就是进行帧定界
    在这里插入图片描述
    不超过1500个字节

透明传输

  • 若传输的数据时ADCII码中“可打印字符(共95个)”集。
  • 若传输的数据不是仅由“可打印字符”组成时,就会出问题。
    在这里插入图片描述
    用字节填充法解决透明传输的问题。在出现的“SOH”或"EOT"前插入转义字符“ESC”,接收端再删除之前插入的转义字符
    在这里插入图片描述

差错控制
传输过程中可能会产生比特差错:1可能会变成0而0也可能变成1.在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率BER(Bit Error Rate)
循环冗余检验的计算过程
在这里插入图片描述
把001和上面最后的000置换进行传输,最后接收端再进行一次除,若余为0则没有差错,并接收数据

MAC层

硬件地址,又称为物理地址,或MAC地址–全球唯一

MAC帧格式
在这里插入图片描述
LAN–局域网
VLAN–虚拟局域网
在这里插入图片描述

网络层

网络层提供的两种服务

网络层应该向运输层提供怎样的服务?

虚电路服务(电信网)

一条逻辑上的拼接,分组都沿着这条逻辑连接传送,不是真正简历了一条物理连接

电路交换的电话通信时先建立了一条真正的连接。因此分组交换的虚连接和电话交换的连接知识类似,但并不完全一样
在这里插入图片描述

数据报服务(因特网)

灵活、无连接、尽最大努力交付
在这里插入图片描述
虚电路与数据报服务比较

对比的方面虚电路服务数据报服务
思路可靠通信应由网络保证可靠通信应当由用户主机来保证
连接的建立必须有不需要
终点地址仅在连接建立阶段使用,每个分组使用短的虚电路号每个分组都有终点的完整地址
分组的转发属于同一条虚电路的分组均按照同一路由进行转发每个分组独立选择路由进行转发
当结点出故障时所有通过出故障的结点的虚电路均不能工作由故障的结点可能会丢失分组,一些路由可能会发生变化
分组的顺序总是按发送顺序到达重点到达终点时不一定按发送顺序
端到端的差错控制和流量控制可以由网络负责,也可以由用户主机负责由用户主机负责

国际协议 IP

在这里插入图片描述

网络互连的设备:
中间设备又称为中间系统或中继(relay)系统

  • 物理层中继系统:转发器(repeater)
  • 数据链路层中继系统:网桥或桥接器(bridge)
  • 网络层中继系统:路由器(router)
  • 网络层以上的中继系统:网关(gateway)(对于现在来说,大家都认为路由器接口地址也叫做网关)
虚拟互联网

在这里插入图片描述
IP协议简介:

网络协议 IP 是 TCP/IP 体系总两个最主要的协议之一。与 IP 协议配套使用的还有四个协议:

  • 地址解析协议 ARP(Address Resolution Protocol)
  • 逆地址解析协议 RARP(Reverse Address Resolution Protocol)
  • 网际控制报文协议 ICMP(Internet Control Message Protocol)
  • 网际组管理协议IGMP(Internet Group Management Protocol)

在这里插入图片描述

IP地址

在这里插入图片描述

特殊的几个地址

127.0.0.1 本地地址

169.254.0.0 windows没有被分配到地址后,自动产生的一个“凑合”用的地址

保留的私网地址:
10.0.0.0
172.16.0.0 — 172.31.0.0
192.168.0.0 — 192.168.255.0

子网掩码的作用

子网掩码(subnet mask)又叫网络掩码、地址掩码,它是一种用来指明一个IP地址的哪些位标识的是主机所在的子网以及哪些位标识的是主机的位掩码。子网掩码不能单独存在,必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两个部分

如果一台计算机的IP地址配置 172.16.122.204,子网掩码为255.255.0.0。将其IP地址和子网掩码都写成二进制,进行与运算,即1和1与运算得1,0 和 0 或 1 和 0 做运算都得0.这样经过IP地址和子网掩码昨晚与运算后,主机位不管是什么值都归零,网络位得值保持不变,这样就得到该计算机所处得网段位 172.16.0.0

划分子网和构造超网

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点到点网络的子网掩码最好是252

IP地址与MAC地址

  1. 交换机基于数据帧的MAC地址转发数据帧,路由器基于数据包的IP地址转发数据包
  2. 数据包在传输过程不变,过网络设备数据帧要用新的物理层地址重新封装
  3. MAC地址决定了数据帧的下一跳由哪个设备接收,而IP地址决定了数据包的起点和终点
    在这里插入图片描述
ARP & PARP

ARP(Address Resolution Protocol),地址解析协议
地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。

不管网络层使用地是什么协议,在实际网络地链路上传送数据帧时,最终还是必须使用硬件地址。每一个主机都设有一个 ARP 告诉缓存(ARP cache),里面有所在地局域网上地各主机和路由器的IP地址到硬件地址的映射表。
当主机A欲向本局域网上的某个主机B发送IP数据报时,就现在气ARP告诉缓存中查看有无主机B的IP地址。如有,就可查出其对应的硬件地址,再将此硬件地址写出MAC帧,然后通过局域网将该MAC帧法网此硬件地址

在这里插入图片描述

IP数据报格式

一个 IP 数据报由首部和数据两部分组成

  • 首部的前一部分时固定长度,共20字节,是所有IP数据报必须具有的
  • 在首部的固定部分的后面是一些可选字段,其长度是可边的
    在这里插入图片描述
    版本
    在这里插入图片描述
    首部长度
    告诉首部有多长
    在这里插入图片描述
    区分服务
    在这里插入图片描述
    总长度
    在这里插入图片描述
    标识
    在这里插入图片描述
    标志
    在这里插入图片描述
IP数据分片举例

在这里插入图片描述
TTL
过一次路由器 TTL -1
在这里插入图片描述
协议
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
首部检验和
在这里插入图片描述
IP 数据报首部的可变部分
在这里插入图片描述

IP转发分组的流程

数据路由 路由器在不同网段转发数据包
网络畅通的条件 能去能回
沿途的路由器必须知道到目标网络下一跳给哪个接口
沿途的路由器必须知道到源网络下一跳给哪个接口

传输层

应用层

  • http https ftp
  • 域名解析 DNS
  • 收发邮件 SMTP(发) PoP3(收)
  • 远程桌面 RDP

传输层

  • TCP 可靠传输
  • UDP 不可靠传输

网络层

  • ==IP (RIP OSPF BGP) ==
  • ICMP IGMP ARP

传输层两个协议应用场景

TCP 分段 编号 流量控制 建立会话 netstat -n
UDP 一个数据包就能完成数据通信 不建立会话 多播

QQ聊天:UDP协议 不可靠传输 不建立会话
传文件:TCP协议 可靠传输 建立会话
访问网站:TCP协议
上传下载文件:TCP协议

传输层和应用层之间的关系

http = TCP + 80(8080) WWW服务,提供英特网的连接和管理

https = TCP + 443

ftp = TCP + 21 提供文件传输功能

SMTP = TCP + 25(Simple Mail Transport Protocol),提供电子邮件传送服务

PoP3 = TCP + 110

22端口:SSH服务,远程用户登录到系统命令行(远程访问服务) 类似于 telnet服务 23端口

RDP = TCP + 3389

共享文件夹 = TCP + 445

SQL = TCP + 1433

DNS = UPD + 53 or TCP + 53

应用层协议和服务之间的关系

服务运行后在TCP或UDP的某个端口侦听客户端请求。

UDP

TCP与UDP

两个对等运输实体在通信时传送的数据单位叫做运输协议数据单元(Transport Protocol Data Unit)
TCP 传送的协议数据单元式 TCP 报文段(segment)
UDP 传送的协议数据单元式 UDP 报文或用户数据报

传输控制协议 TCP 概述

TCP 是面向连接的运输层协议

每一条TCP连接只能有两个端点,每一条TCP连接只能是 点对点的(一对一)

TCP 提供可靠交付的服务
TCP 提供全双工通信

面向字节流

每一条TCP连接有两个端点,TCP连接的端点不是主机不是主机的IP地址不是应用进程也不是传输层的协议端口给。TCP连接的端点叫做套接字(socket)

端口号拼接到IP地址即构成了套接字
在这里插入图片描述

UDP协议主要特点

TCP协议特点

TCP如何实现可靠传输

可靠传输的工作原理--------停止等待协议
在这里插入图片描述
在这里插入图片描述
使用上述的确认和重传机制,我们就可以在不可靠的传输网络上实现可靠的通信

这种可靠传输协议常称为自动重传请求ARQ(Automatic Repeat reQuest)

ARQ表明重传的请求是自动进行的。接收方不需要请求发送方重传某个出错的分组。

停止等待协议的有点是简单,但缺点是信道利用率太低。
在这里插入图片描述
在这里插入图片描述

以字节位单位的滑动窗口技术

在这里插入图片描述
A收到B的确认窗口就可以移动了
在这里插入图片描述
B发出确认后自己也可以移动了
在这里插入图片描述
如果发生丢失数据包的情况:

在这里插入图片描述
先置确认号为7提醒789没收到,再选择性确认,以免重发10 11 12

超时重传时间的选择

在这里插入图片描述

TCP协议如何实现流量控制

流量控制就是让发送方的发送速率不要太快,既要让接收方来得及接收,也不要使网络发生拥塞

利用滑动窗口机制可以很方便地在 TCP 连接上实现流量控制

流量控制 接收端和发送端流量 由接收窗口设定发送窗口
在这里插入图片描述

TCP报文端首部格式

在这里插入图片描述
在这里插入图片描述

URG 标记位

告诉计算机要传输的数据是否是“高级数据”,需不需要优先传(插队)。

ACK 标记位

如果标记为 0 -----> 确认号无效为 0
如果标记为 1 -----> 确认号有效
在这里插入图片描述

SYN 标记位

同步:

  1. 客户端向web站点发送建立会话请求–> 序号 = 0,ACK = 0,确认号 = 0,SYN = 1
  2. web站点同意建立会话–> 序号 = 0,ACK = 1,确认号 = 1, SYN = 1

当建立成功后,SYN重新置为0,没有了,ACK保持为1

**注意:**是SYN二进制位是1,确认号是要跟着数据位置走的
在这里插入图片描述

FIN 标记位

释放连接

TCP协议如何避免网络拥塞

出现资源拥塞的条件:

  • 对资源需求的总和 > 可用资源

拥塞控制是一个全局性的过程,涉及到所有的主机、所有的路由器,以及与降低网络传输性能有关的所有因素

流量控制往往指在给定的发送端和接收端之间点对点通信量的控制,它所要作的就是抑制发送端发送数据的熟虑,以便使接收端来得及接收。
在这里插入图片描述
发送方维持拥塞窗口cwnd(congestion window)

发送方控制拥塞窗口的原则是:

  • 只要网络没有出现拥塞,拥塞窗口就再增大一些,以便把更多的分组发送出去
  • 只要网络出现拥塞,拥塞窗口就减小一些,以减少注入到网络中的分组数

一轮一轮增长

慢开始算法

在这里插入图片描述
在这里插入图片描述
慢开始门限:就是指不再以指数规律增长,用1+1的方法增长,避免过快。ssthresh

当到达如图 24 窗口发生拥塞,首先将 ssthresh重新更新为 24 * 0.5 = 12的位置,并且重新进行慢开始,并重复操作。
在这里插入图片描述
“拥塞避免”并非指完全能够避免拥塞。利用以上的措施要完全避免网络拥塞还是不可能的

"避免拥塞“是说再拥塞避免阶段把拥塞窗口控制位按线性规律增长,使网络比较不容易出现拥塞

快重传和快恢复

在这里插入图片描述
在这里插入图片描述

发送窗口的实际上限值

rwnd 接收窗口
cwnd 拥塞窗口
在这里插入图片描述

TCP的传输连接管理

传输连接有三个阶段,即:连接建立、数据传送和连接释放

TCP 连接的建立都是采用客户服务器方式

主动发起连接建立的应用进程叫做客户(client)
被动等待连接建立的应用京城叫做服务器(server)

三次握手建立TCP连接

在这里插入图片描述

第一次

在这里插入图片描述

第二次

在这里插入图片描述

第三次

在这里插入图片描述

三次握手的ACK百度解释

在这里插入图片描述

TCP的连接释放(四次挥手)

第一次

在这里插入图片描述

第二次

B发出确认,A->B发送断,但是仍接收B
在这里插入图片描述

第三次

在这里插入图片描述

第四次

在这里插入图片描述
TCP连接必须经过时间 2MSL 后才能真正释放掉
在这里插入图片描述

TIMEWAIT

TIME_WAIT状态需要经过2MSL才能返回到CLOSE状态

MSL:最长报文段寿命

  1. 为了保证A发送的最后一个ACK报文段能够到达B。假设网络是不可靠的,有可以最后一个ACK丢失。所以TIME_WAIT状态就是用来重发可能丢失的ACK报文。在Client发送出最后的ACK回复,但该ACK可能丢失。Server如果没有收到ACK,将不断重复发送FIN片段。所以Client不能立即关闭,它必须确认Server接收到了该ACK。Client会在发送出ACK之后进入到TIME_WAIT状态。Client会设置一个计时器,等待2MSL的时间。如果在该时间内再次收到FIN,那么Client会重发ACK并再次等待2MSL。所谓的2MSL是两倍的MSL(Maximum Segment Lifetime)。MSL指一个片段在网络中最大的存活时间,2MSL就是一个发送和一个回复所需的最大时间。如果直到2MSL,Client都没有再次收到FIN,那么Client推断ACK已经被Server成功接收,则结束TCP连接。
  2. 防止“已失效的连接请求报文段”出现在本连接中。A 再发送完最后一个ACK报文段后,再经过时间2SML,就可以使本连接持续的时间内所产生的所有报文段都从网络中消失。这样就可以使下一个新的连接中不会出现这种旧的连接请求报文段

应用层

应用层协议都是为了解决某一类实际应用问题

网络当中解决某一类实际问题就是通过位于不同主机中应用层的多个进程之间的通信来完成

应用层的许多协议都是基于客户服务器方式

域名系统 DNS (Domain Name System)

域名:
全球唯一

.根
com net edu org gov cn 顶级域名
在这里插入图片描述
例:
www.blog.lizi.com

  • www :域名下的主机
  • .blog :三级域名
  • .lizi :二级域名
  • .com :顶级域名

域名之下可以有多个子域名

域名解析过程

在这里插入图片描述
流程举例:客户端A访问inhe.net,.net服务器告诉A:.net地址为100
如果访问.com,.net服务器转去根服务器,询问.com服务器的地址,根服务器告知为 102,再由.net告知A, .com服务器地址为102,客户端A再去访问.com。同时.net服务器将会缓存.com服务器地址。此时如果客户端B再通过.net访问.com服务器,就不用再去找根服务器,直接转到.com服务器,进入web。

在这里插入图片描述
ipconfig /flushdns – 清除缓存
ipconfig /displaydns – 查询缓存
nslookup – 测试域名解析结果
在这里插入图片描述

DNS循环支持镜像Web站点

简单来说就是一个域名对应多个地址。

作用是避免所有用户都拥入一个ip地址服务器。
在这里插入图片描述

客户端域名解析过程

  1. 先查找缓存
  2. 缓存没有,查 hosts 文件(优先级不高)
  3. host没有,查找 DNS

自动批处理

ipconfig /all c:\ipconfig1.txt– 保存结果为文本文件
netstat -n | find "443" – 选择指定端口查看结果
批处理脚本:
copy c:\*.txt e:\txt
(del e:\txt\*)
del /Q e:\txt\* /Q 不再询问 (类似 rm -rf)

然后将上诉操作复制粘贴到txt中,后缀名改为 .bat

文件传送协议 FTP(File Transfer Protocol)

FTP 使用的两个TCP连接

主动模式

FTP服务器主动向FTP客户端建立连接 源端口20

FTP主动模式客户端必须关闭防火墙

被动模式

FTP服务器端随机打开一个端口12345 FTP客户端连接该端口

远程终端协议 TELNET

用户用 TELNET就可以在其所在地通过 TCP 连接登录到远地的另一个主机上, TELNET 能将用户的击键传到远地主机,同时也能将远地主机的输出通过 TCP 连接返回到用户屏幕

万维网WWW (World Wide Web)

URL的一般形式

由以冒号隔开的两大部分组成,并且再URL中的字符对大写或小写没有要求。
URL的一般形式是:

<协议>://<主机>:<端口>/<路径>
端口是默认的,可以不写
在这里插入图片描述

http: 超文本传输协议

TCP 80端口
网站的标识:

  1. 不同的端口
  2. 不同的IP地址
  3. 使用不同的主机头(域名)
    在这里插入图片描述
    当使用不同的主机头时,IP或端口将不再冲突

使用Web代理服务器访问网站

  1. 节省内网访问Internet的带宽
  2. 通过Web代理访问绕过防火墙

总结

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Artintel

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值