根据B站上韩立刚老师的视频课整理的笔记。发现网上看视频课真是个好东西,尤其是对于复习阶段的我来说。。。
计算机网络的学习过程中其实需要结合实验操作,以前上课的时候应该是用过华为的交换机的(??似乎是这个吧,有点忘了)
需要注意的是,计算机网络中涉及大量的英文缩写,了解它们的具体含义对理解协议等很有帮助
网络体系架构:计算机网络各层及其协议的集合
OSI(Open System Interconnect,开放式系统互连)
-互联网法律上的国际标准
之所以使用多层模型,是为了使各层直接的关联尽量低(eg.应用层中包含网络层信息,可能会导致后续维护程序有困难)
n | 层 | 作用 | 例 |
---|---|---|---|
7 | 应用层 | 产生网络流量的,可与用户进行交互的 | |
6 | 表示层 | 是否需加密、压缩,开发人员 | 聊天记录加密(2进制、ASCII) |
5 | 会话层 | 服役期和客户端建立的会话 | 查看木马 netstat-n (+b可以查看木马名) |
4 | 传输层 | 可靠传输(建立会话),不可靠传输(不建立会话)、流量控制 | 前:下载电影;后:qq聊天、域名解析。服务器暂停传输 |
3 | 网络层 | 网络地址多址,选择最佳路径(使用动态路由协议) | |
2 | 数据链路层 | 数据如何封装,添加物理层地址(MAC) | |
1 | 物理层 | 电压、接口标准 | 网线有8根线,电压0,1对应不同的电压 |
5~7程序开发人员需要考虑
网络工程师主要解决2~4的问题
网络排错:从下至上排查
*所有命令可以通过nestat /?查看windows下的所有命令(参数)
物理层安全:给他人提供了访问你的网络的机会
数据链路层安全: ADSL AP密码(无线:个人PC的网卡)
应用层安全: eg.设置路由器某地址段不能通过
用用层安全; SQL注入漏洞(eg.可登陆到服务器) 上传漏洞(PSP,服务器可能会被攻击)
层 | 名称 |
---|---|
4 | 应用层 |
3 | 传输层 |
2 | 网络层 |
1 | 网络接口(访问)层 |
《计算机网络》第6版所提出的模型
层 | 发送数据模式 | 发送的内容(???) | |||
---|---|---|---|---|---|
5 | 应用层 | 传输数据单元PDU | qq上发的文档 | ||
4 | 传输层 | 运输层报文 | 上层+运输层收不 | ||
3 | 网络层 | IP数据报(IP分组) | =上层→分段编号+协议+IP地址 | ||
2 | 数据链路层 | 数据帧 | 上一层的包+MAC地址 | ||
1 | 物理层 | 0111100(bit) | 上一层+ 帧头帧尾 |
P13作业:查看会话,查看建立会话的程序 不懂
P15 sNAT,dNAT,VMware(虚拟机) 不懂
机械特性 eg:
特性
特性
特性
eg.典型的数据通信模型:
此外,涉及到的概念还有通信相关的:数据 信号 码元 x工通信 Nyquist定理 Shanon公式 Manchester码 _DM PCM编码等
用数字技术对现有的模拟电话用户线在高频的使用
通常我们的语音范围在300-3400HZ内(标准模拟电话信号频带),但用户线本身实际可通过的信号频率仍然超过1MHz
xDSL技术将0~4kHz地段频谱留给传统电话使用,把原来未被利用度而高段频谱留给用户上网使用
上网:
用户端分离后接ADSL调制解调器
用户端分离后接DSLAM(DSL Acess Multiplexer,数字用户线接入复用器)
接入段接单元ATU(Acess Termination Unit)
ATU-C(Acess Termination Unit-Central Office,端局)
ATU-R(Acess Termination Unit-Remote,远端)
电话分离器 PS(POTS Splitter)
可以是光纤到家(FTTH,FIber To The Home),光纤一直铺设到用户家庭(155Mb/s),可能是居民接入网最后的解决方法;
也可以是光纤到楼 (FTTB, Fiber To The Building),光纤进入大楼后转为电信号,后用电缆或双绞线分配至用户
也可以是光纤到路边 (FTTC, Fiber To The Curb):路边到各用户,使用星形结构双绞线作为传输媒体(155Mb/s)
主要考虑从数据链路层→数据链路层的过程
链路(link):一条点到点的物理线路段,中间无其它节点(一条链路只是一条通路的组成部分)
数据链路(data link):物理线路+通信协议控制数据传输。构成数据链路,需将实验这类协议的硬件和软件加到链路上。
- 最常用方法:使用适配器(网卡)以实现这些协议的硬件和软件
- 一般的适配器都包括了数据链路层+物理层的功能
在一段数据的前后分别添加头部(SOH)和尾部(EOT)束标记,一个帧就这样构成了,这样我们就确定了帧的界限。一帧是一个整体,不可分
手部和尾部的重要作用:帧界定;不完整的帧都会被扔掉
MTU:最大传输单元,≤1500byte
如遇以上情况,我们会在传输的EOT、ESC前加上一个转义字符ESC(字符填充),避免被误认为是帧尾部或其它;添加阶段同开始和结尾符;而删除转义字符(所有)则是在数据送往网络层之前,同样通过收方的数据链路层完成的:
这里的“透明”是指发送和接收方并不知道传输过程中加入的内容
发送端的数据链路层在数据中出现控制字符"SOH"或“EOT"的前面插入字符“ESC”(其十六进制编码1B)
字节填充(byte stuffing)或字符填充(character stuffing)——接收端的数据链路层在将数据送网络层之前删除插入的转义字符。
如果转移字符也出现在数据当中,那么应在转义字符前插入一个转义字符。当接收端收到连续的两个转义字符时没救删除其中前面的一个。
为保证数据传输的可靠信,需要进行各种差错监测措施
传输过程中可能会产生比特差错:1→0,0→1;一段时间内,传输错误的bit/传输比特总数的bit=误码率(BER,Bit Error Rate)
在数据链路层传送的帧中被广泛使用的一种差错检测方法。
规则:
在发送端,先将数据划分为组。嘉定每组k个比特。
假设带传送的一组数据M=101001(现在k=6).我们在M的后面再添加共差错检测用的n位冗余码一起发送。
冗余码如何计算?
将所传输的码+n个0作为被除数M,加0的个数以M的位数为2^n为准
除数P:n+1位的任意数
商Q
余数R:n位,作为FCS(帧检验序列)
具体操作:
模二除法,中间亦或,遇0上0
将Q+R作为发送方的数据传输,若接收方收到数据后进行同一个除数P的除法(除数P通过两方数据链路层的协商来共同决定),余数为0,则视作无差错传输
特点:
倘若要做到“可靠传输”,就必须加上确认和重传机制(考虑到帧重复、丢失、乱序的情况)
使用的信道(后有详细内容):
PPP协议已成为因特网的正式标准[RFC 1661]:多家厂商支持
作用:可记账(时间、IP地址、费用、身份认证)
使用场合:
电话线拨号上网
ISP(Internet Service Provider,互联网服务商):常见的移动电信等
组成:
QUESTION: 若信息字段中出现了标志字段的值,是否可能会被误认为是标志字段?
在 同步通信中:可能传输bit流,不一定为8倍数的bit
此时为了防止数据中出现头尾部的字段,采用零bit填充法
eg.信息字段中出现0111 1110(7E)
解决方案:发送端在5连1后插0 0111 11**+0+**10
接收端把5连1后的0删除
应满足的条件 | 不需要满足的条件 |
---|---|
简单——首要要求 | |
封装成帧 | 流量控制 |
透明性 | 序号 |
多种网络层协议 | 多点线路 |
多种类型链路 | |
差错检测 | |
检测连接状态 | |
最大传送单元 | |
网络层地址协商 | |
数据压缩协商 |
Encapsulation(封装):帧中继(frame-relay)、HDLC(High-Level Data Link Control,高级数据链路控制)也是两种数据链路层常使用的协议
但接受和发送方都需要有与对方相同的协议,不然无法解析
局域网的一种
提供的服务是不可靠交付,即尽最大努力的交付;接收到不正确的数据帧即丢弃,差错的纠正由高层决定。
传统以太网使用:粗同轴电缆→细同轴电缆(便宜)→双绞线(便宜、灵活)
环形网主要用于总线,现少用于局域网(令牌环网)
总线型、树性网络端点有电阻吸收信号
最早的以太网是将多个计算机都连接到一根总线上。引为总线上无“有源器件”(?),该种方法简单可靠。
总线型的网络不够健壮(?),所以采用了星型结构,结构的中心是可靠性非常高的——集线器**(Hub)**
集线器:使用电子器件模拟实际电缆线的工作,使用大规模集成电路芯片,所以硬件设备的可靠性被大大的提高,使得整个系统不像传统以太网那样运行;作用类似于一个多接口的转发器,可以理解成有信号放大的作用
各工作站仍使用CSMA/CD协议,并共享逻辑上的总线
标准:10BASE-T(双绞线)
通信距离稍短,每个站到集线器距离不超过100m,速率10Mb/s,该无屏蔽双绞线星型网的出现,降低了成本,也提高了可靠性,是局域网发展史上的一个里程碑,它为以太网在局域网中的统治地位奠定了牢固的基础。
网络为一个单位所有,且地理范围和站点均有限。
广域网花钱租带宽,ISP维护;局域网无线AP,直接用网线连接
优点:
共享通信媒体:
静态划分:FDM、TDM,WDM,CDM
动态媒体接入控制(多点接入):随机接入(主要被以太网采用);受控接入(eg.多点线路探询(polling)或轮询,目前已不采用)
以太网使用使用协议:CSMA/CD
CSMA/CD(Carrier Sense Multiple Access with Collision Detection):使用该协议的以太网只能进行半双工通信
“多点接入”——多台计算机以多点计入的方式连接在一根总线上(总线拓扑)
“载波监听”——每一个站在发送数据前,需先检测(采用电子技术)总线是否有其它计算机在发送数据(信号),若有,则暂时不发送数据以免发送碰撞
“碰撞(冲突)检测”——计算机发送数据同时检测信道上的信号电压大小
-多站点同时于总线上发送数据时,总线上的信号电压摆动值增加(相互叠加
- 某站检测到的信号电压摆动值超过一定门限,就认为总线上至少有两个站同时发送数据,表明产生了**碰撞
若检测到碰撞
- 总线上传输的信号产生了严重失真,无法从中恢复出有用信息
- 每一个正在发送数据的站,一旦发现总线上出现碰撞,需立即停止发送,以免浪费网络资源,等待一段随机时间后再次发送
最先发送数据帧的站,在发送数据帧后至多经过时间2τ,皆可以知道发送的数据帧是否遭受碰撞。若争用期内未检测到碰撞,可以肯定本次发送不会产生碰撞
常用数据:
最短有效帧长
发生碰撞的站在停止发送数据后,要推出(退避)一个随机事件再发送数据。
以太网的两种标准
DIX Ethernet V2和IEEE 802.3只有很小的差别,因此可以将802.3局域网称为“以太网”,而严格来说“以太网“应该指的是符合DIX Ethernet V2标准的局域网
为了使数据链路层更好的使用多种局域网标准,在IEEE 802中,将局域网的数据链路层拆成了两子层
由于TCP/IP中常用的局域网是DIX Ethernet V2而不是802.3标准中的几种局域网,因此LLC的作用已经不大了,所以许多厂商生产的适配器上就装有MAC协议
一个帧从开始发送,经可能发生的碰撞期后,再重传数次,到发送成功且信道转为空闲(需+时间τ使得信道上无信号在传播)为止,是发送一帧所需的平均时间
以太网单边端到端时延(传输时间)τ
发送时间T0=帧长度L/数据发送速率(b/s)
平均时间=n*争用期2τ+帧发送成功时间T0+发送至到达目的地时间τ
以太网信道利用率S,在理想情况下,无碰撞(显然不是CSMA/CD协议,而是一种特殊的调度方法)信道利用率的最大值为:
MAC层的硬件(/物理)地址(MAC地址):48位的2进制,有统一标准
查看计算机的MAC地址:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201108104451880.png#pic_center
同一交换机上的MAC地址冲突,可能需要修改Mac地址
修改MAC地址
适配器从网络上收到一个MAC帧就会首先用硬件检查MAC帧中的MAC地址
单播:目标地址唯一
广播():MAC地址全1(FFFFFF)
多播:频道
由上,最常用的MAC帧是以太网V2的格式:
由于传输的帧数据为至少为64byte(碰撞检测),除去头尾部的字节,数据报至少要有46byte的内容
物理层无尾部——以太网使用Manchester编码,所以不用尾部帧,无信号即结束
通过以上规则
无效Mac帧:
对于检查出的无效MAC帧简单丢弃。以太网不负责重传丢弃帧
帧间最小间隔
最小间隔为9.6us,相当于96bit的发送时间
一个站在检测到总线开始空闲后,还要等待9.6us才能再次发送数据
原因:使刚刚收到数据帧的站的接收缓存可以及时清理,做好就收下一帧的准备
若加上一个主干集线器,变成了一个更大的冲突域(效率反而降低)
数据链路层扩展局域网——使用网桥,接集线器
网桥:工作再数据链路层,它根据MAC帧的目的地址对收到的帧进行转发;具有学习功能;具有过滤帧的功能。当网桥收到一个帧时,并不是向所有的接口转发此帧,而是先检查此帧的目的Mac地址,然后在确定将该镇帧转发到哪一个接口
相比以上,冲突域增加,效率提高
优点:
缺点:
透明网桥:目前使用最多。“透明”指局域网上的站点并不知道所发送的帧将经过哪几个网桥,因为网桥对各站来说看不见。它是一种即插即用设备,起标准为IEEE 802.1D
自学习算法;
按照自学习算法处理收到的帧和简历转发表:
交换机是高速网桥:这种网桥的接口多,可直连计算机,不存在冲突(接口直接有地址MACa,MACb),安全;效率高,有排队机制,可存储转发
eg.A和B通信正在传数据,A也想和C传数据,可以等待AB通信之后继续
eg.10M交换机,每个端口都是10M;有24个接口,则有240M的整体交换能力
练习:ping通,交换机的接口学习到对应的MAC地址
使用了生成树算法:(和生成树算法的关系?)
为了避免产生转发的帧在网络中不断地兜圈子(消耗网络资源)
互联在一起的网桥在进行彼此通信后,就能找出原来的网络拓扑的子集,该子集中,整个联通的网络中不存在回路,即在任何两个站之间只有一条路径。
为了得出能够反映网络拓扑发送变化时的生成树,在生成树上的根网桥,每隔一段时间还要对生成树的拓扑进行更新。
根交换机:优先级强→MAC地址小(Root ID Address,Brdge ID Address)
根端口(RP):每个 交换机 离 根交换机 最近的端口 称为 根端口
指定端口(DP):每一根线都有一个到根交换机传输速度快(近)的端口
非指定端口(NP,阻断端口):非指定端口和根端口
LAN(local network)
虚拟局域网VLAN(Virtual local network)是由一些局域网万股单构成的与物理位置无关的逻辑组
虚拟局域网其实只是局域网给用户提供的一种服务,而不是一种新型局域网
交换机的额使用使得VLAN的创建成为可能
虚拟局域网VLAN是由一些局域网网段构成的,与物理位置无关的逻辑组
一个Vlan=一个广播域=逻辑网段
eg.配置一个虚拟局域网,不同的VLAN不能通信
虚拟局域网协议允许在以太网的帧个格式中插入一个4byte的标识符,成为称为VLAN标记(tag),知名发送该帧的工作站属于哪一个虚拟局域网
速率达到或超过100Mb/s的以太网成为高速以太网
在双绞线上传送100Mb/s基带信号的星型拓扑以太网,仍使用IEEE 802.3的CSMA/CD协议。1000BASE-T 以太网又成为快速以太网(Fast Ethernet)
100Base-T以太网的物理层
特点:
eg.可以设置PC机的全/半双工,传输数率
1000BASE-X 基于光纤通道的物理层
1000BASE-T
它的出现扩大了以太网使用的范围,从局域网(校园网、企业网)扩大到城域网和广域网,实现端到端的以太网传输
优势:
网络层关注的是如何将分组从源端沿着网络路径送达目的端。
在计算机通信中,可靠交付由端系统来负责
网络层应该向运输层提供的服务
参数 | 虚电路服务 | 数据报服务 |
---|---|---|
思路 | 可靠通信应当由网络来保证 | 可靠通信由用户主机来保证 |
连接的建立 | 必须有 | 不需要 |
重点地址 | 仅在连接建立阶段使用,每个分组使用端的虚电路号 | 每个分组都有终点的完整地址 |
分组转发 | 属于同一条虚电路的分组均按照同一路由进行转发 | 每个分组独立选择路由进行转发 |
结点出现故障 | 所有通过故障的结点的虚电路均不能工作 | 出故障的点可能会丢失分组,一些路由可能会发生变化 |
分组的顺序 | 总是按发送顺序到达终点 | 到达终点时不一定按发送顺序 |
端到端的差错处理和流量控制 | 可以由网络负责,也可以由用户主机负责 | 由用户主机负责 |
若仅从网络层考虑问题,则IP数据报就可以想象实在网络层中传送
虚拟互联网:相比互联网络不关心内部结构,只通过IP地址
意义:
虚拟互联网络也就是逻辑互联网络,即互联起来的各种物理网络的异构性本来是客观存在的,但是我们利用IP协议,就可以使这些性能各异的网络从用户方看起来是一个统一的网络
网际协议IP是TCP/IP体系中最主要的协议之一。与IP协议配套使用的还有几种协议:
ipv4 ——第四版TCP/IP地址,32位二进制(8,8,8,8),地址有限,网络号(net-id,标记主机/路由器所连接到的网络)+主机地址(host-id,标记该主机/路由器)
ipv6 ——
网络地址(网络号)唯一指定了每个网络
主机部分:不能全为1(255,广播地址,网络中所有计算机都能收到),或者全为0(代表一个网段)
一网络中的每台计算机都共享相同的网络地址,并用它作为自己IP地址的一部分
ps.同一局域网的主机或路由器的IP地址中的网络号必须一致
IP地址类别:
A类:首位0,第一个可用网络号:1;最后一个可用网络号:126;子网掩码255.0.0.0(主机位24位,256^3-2台机器)
B类:首位10,第一个可用网络号:128.1;最后一个可用网络号:191.255;子网掩码255.255.0.0(主机位24位,256^2-2台机器)128~191
C类:首位110,第一个可用网络号:192.0.1;最后一个可用网络号:223.255.255;子网掩码255.255.255.0(主机位24位,256台机器-2)192~224
D类:首位1110,组播
E类:首位1111
几个特殊地址:
127.0.0.1 :计算机本地环回地址
169.24.7.28:备用IP地址
保留的私网地址,未被正式启用,可在局域网中使用
10.0.0.0
172.16.0.0——172.31.0.0
192.168.0.0——102.168.255.0
传输信息:
由各IP地址和子网掩码确认是不是在同一网络,若不是→交给网关
是→可以直接传数据报
由原地址继续划分子网:
每个子网 是原来的1/2,子网掩码向后移一位
eg.点到点的子网划分,原网络192.168.0.0,(C类)分成2个地址:即路由器-路由器直连
划分到网段‘4’,划分了6次,可用主机位为1,2,子网掩码255.255.255**.252**(最长,30位)
仍然需要画出数轴
子网掩码会有不同
eg,给定地址192.168.80.249,子网掩码:255.255.255.224
地址是C类地址,224——子网111(右移3位)
子网地址(主机位归0):192.168.80.124
eg.判断主机位是否全0或全1,给定地址192.168.201.168/30
00 168%4=0
01 ∴ 主机位为00
10
11
将多个网段合并成同一个网段,将相同的部分作为
合并网络的规律
计算机A和B的通信过程
数据报中目标地址和源IP地址不变(目标)
目标和源MAC地址动态改变(下一跳)
代理服务器只能管理本网段的计算机MAc地址,其它网段只能管理Ip地址
广播寻址,衍生出很多安全问题
MAC地址/ARP欺骗
eg. p2p终结者,可控制网内(同一路由器)计算机上网带宽
M2:网关地址
M1:安装了P2P终结者的计算机mac地址
该地址告知了其它计算机网关地址是M1
eg. 网络执法官:影响本网内主机上网和主机间互联的通断
安装ARP防火墙可以有效防止欺骗:后续的路由器地址不会被随意修改,以之前的为准
网络链接→后点修复:清理所有的mac地址缓存
首部+数据
区分服务:QoS服务质量
总长度:首部+数据部分
标识:产生了数据报即+1
数据报片:>1500字节的数据会再拆分,有编号
偏移:开头x字节/8
生存时间:TTL-1-1-1(每经过一个路由器)
协议号:数据类型 eg.UDP
首部校验和:检验首部是否有错误,不采用CRC而采用简单的计算方法,结果0,保留数据反则丢弃帧
抓包工具:Ethereal
网络畅通的条件:能去能回
数据路由:在不同网段转发数据报
xx的路由器必须知道目标下一跳/源网络给哪个接口
静态路由:路由器需要知道所有的__的信息
eg.计算机上的默认路由即网关,是本网段的出口
Router1>en \*
Router1#config t
Router1#show ip route
Router1#config t
Router1(config)#ip route 192.168.0.0 255.255.255.0
Router1(config)#^Z
Router1#
Router1#show ip route
Router1#
Router1#config t
Router1(config)#no ip route 192.168.0.0 255.255.255.0
eg.Windows上加默认路由
route add 0.0.0.0 mask 0.0.0.0 10.7.86.1
网关:
练习:网络负载均衡
eg.对route相关的操作进行查询
route /?
动态路由:动态选择最佳路径(不讨论带宽,步数↓,路径优↑)
RIP(Routing Information Protocol,路由信息协议)协议 最早 周期性广播-30s 跳数max16
Router>
Router>
Router>en
Router#config t
Enter configuration commands,one per line,End with CNTL/
Router(config)#rou
Router(config)#router r
**Router(config-router)#router rip**
Router(config-router)#net
**Router(config-router)#network 172.16.0.0 \*网段,多种则写多个**
简单来说,就是用来探测网络故障的
网际层使用该协议,提高了IP数据报报交付成功的机会,允许主机或者路由器报告差错情况和提供相关异常情况的报告
IP数据报的数据部分即为:ICMP报文
ICMP报文的类型
类型0:请求
ICMP应用举例:
ping \*后接IP地址
eg.查看丢包的情况,丢包率(路由器转发丢法率,链路丢包率)
pathping www.CSDN.com
开放式最短路径优先协议,也是一种动态路由协议
eg.互联网运营商,某些公务部门常用
度量值: **带宽**
触发式更新
支持多区域
eg.OSPF划分两种不同的区域
骨干网,自治系统AS(路由器变化在内部完成)
三个表:
特点:
配置OSPF协议
Router>
Router>en
Router#config t
Router(config)#rou
Router(config)#router ospf 1
Router(config-router)#net
Router(config-router)#network
%Incomplete command
Router(config-router)#network 172.16.0.0 0.0.255.255 a \*翻转子网掩码
Router(config-router)#network 172.16.0.0 0.0.255.255 area 0 \*翻转子网掩码
eg.至172.17.0.2途径路径
PC>tracert 172.17.0.2
使用不同协议的AS(譬如RIP\OSPF之流)之间的交流:使用BGP发言人通告如何走
特点:
BGP协议交换路由器信息数量不是很多
BGP发言人数目不多,路由选择相对简单
BGP协议支持CIDR
BGP建立时,交换整个路由表之后只交换变化部分
NAT
节省公网IP地址
内网安全
缺点:比路由慢
PAT
端口映射 允许Internet上的计算机访问企业内网的某个服务
enable
网络不可靠,可靠性由传输层决定
原理——停止等待协议
有点:简单
缺点:信道利用率U太低
改进方法:连续发数据包(TD)——流水线传输
接收方采用累积确认方式
有差错情况下,等待时间RRT+一小段时间,再进行超时重传
使用上述的确认和重传机制,我们就可以在不可靠的传输网络上实现可靠的通信,该种可靠的传输协议常称为自动重传请求ARQ(Automatic Repeat request)
ARQ表明重传的请求是自动进行的,接收后不需要请求发送方重传某个出错的分组
为了提高效率,一般采用累加确认的方法:只确认连续的部分
两个对等运输实体在通信时传送你的数据单位叫做运输协议数据单元(Transport Protocol Data Unit)
建立会话可以用 netstat -n查询
TCP 传送的协议数据单元 是TCP报文段(segment) 全双工通信,进行多分段编号传输
需要先建立连接(开销大),提供可靠交付的、面向连接的服务
面向字节流,进行流量控制 、拥塞控制
数据报形式=首部(源端口 目的端口 长度 检验和)+数据
每一条TCP连接只能有两个端点(endpoint),每一条TCP连接只能是点对点的,不提供广播或者多播服务
ps.这里所指的端点,非主机非主机IP地址非应用进程也非传输层的协议,而是叫做套接字(socket)
套接字=端口号拼接到IP地址(IP地址:端口号)
TCP连接::={socket1,socket2}
={(IP1:port1),(IP2:port2)}
eg
.报文TCP报文首部(多数数据报均无最后一行的选项+填充部分;某些数据报只有首部无数据)
序号:本次开头发送的首先是文件的第x个字节
确认号:目标已成功收到,该发第x个字节了
数据偏移:最大1111(15)*4字节(20字节的固定首部,说明‘选项’最多40个字节),告知计算机头部的大小,数据从何时开始传送
在给定的发送端和接收端间的点对点通信量的控制,它所要做的就是一直发送端发送数据的速率
,以便接收端来得及接收。
是一种全局性过程涉及到所有主机,所有路由器,以及降低网络传输性能有关的所有因素
对资源需求的总和>可用资源
拥塞避免算法的实例
当TCP链接进行初始化时,将拥塞窗口设置为1.图中的窗口单位不适用字节而使用报文段。
慢开始门限的初始值设置为ssthresh=16
新的ssthresh值=拥塞窗口/2
快重传及快恢复:
接收到三个连续的ACk后,启用快恢复,ssthresh=原窗口/2,拥塞窗口从该值开始+1增加
发送窗口实际上限值
发送方的发送穿够的额上限值应当取为接收方窗口和拥塞窗口两个变量中较小的一个,
发送窗口的上限值=Min[rwnd,cwnd]
如果认为上述描述不够清晰,还可以参考TCP之 流量控制(滑动窗口)和 拥塞控制(拥塞控制的工作过程)
传输连接管理
模型建立、数据传送、连接释放
“三次握手”(面试中计算机网络必问)
seq=sequence序列号
ack=
A——客户端,B——服务器
①A向B发送同步数据包 SYN=1(同步位,TCP首部),ACK=0(确认号还未使用),seq=x(序号)
②B向A发送,SYN=1,ACK=1,seq=y(由B计算机指定),ack=x+1(已收到A发送的x字节)
(以上证明网络畅通,协商数据所需的参数。rwnd等)
③A向B发送,ACK=1,seq=x+1(由B计算机指定),ack=y+1
Q:为什么还要简历第三次连接呢?(面试会问)
A:A向B发送的数据可能存在时间延迟,若只有两次传输直接开始通信,B预留了资源会造成浪费
(考试中可能出现填空题)![在这里插入图片描述](https://img-blog.csdnimg.cn/20201119113750879.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80ODA5NDczMg==,size_16,color_FFFFFF,t_70#pic_cente
eg.netstat -n
“四次挥手”
数据传输结束后,通信的双方都可以释放连接
客户端A→B发出连接释放报文段,并停止再发送数据,主动关闭TCP连接
随后等待2MSL(最长报文时间2,22min)
UDP 传送的协议数据单元是UDP报文或用户数据报。
传输前不建立连接(节省服务器资源),对方收到UDP报文后,不需要给出任何确认
一个数据包即可完成数据通信,
首部(源端口 目的端口 长度 检验和)+数据
选项:可接受的的最大数据长度;确认是否支持选择性确认
eg.校验和
超时重传时间的选择:TCP每发送一个报文段,就对该报文段设定一才计时器。只要计时器时间设置的重传时间到但是还没有收到确认,就要重传这一报文段。
(RFC2988推荐的α值为1/8)
超时重传时间应略的大于上面得出的加权平均往返时间RTTs
eg. QQ,及时消息采用UDP协议
发送文件采用TCP协议
访问网站,TCP协议
多播, UDP
域名解析,UDP
DNS服务的作用:主要是是将域名变成IP地址的过程
域名:名称,易于访问,全球唯一,在互联网组织进行名称注册
根
顶级域名 com(商业) edu(教育) net(提供信息) cn(中国的) org(组织) gov(政务):代表复服务器性质
二级域名 baidu tecent
三级域名 wenku
ftp/mail/www——三种服务器
域名解析测试:
>nslookup
>Address:222.222.222 \*检查到该DNS服务器提供域名解析
>www.baidu.com
>Address:36.152.44.96 \*对应的IP地址 (有俩,后面会讲到负载均衡)
36.152.44.95
或是直接:
>nslookup www.baidu.com
>Address:36.152.44.96
36.152.44.95
>quit \*结束后,以quit退出
域名解析过程:
安装自有的DNS服务器场景:
安装DNS服务步骤:(72-6略)
将计算机的网络配置好
DHCP服务器为下辖的计算机分配地址,计算机使用DHCP协议请求获得地址
静态IP地址(机房服务器,教室的台式机)
动态IP地址 (在不同区域移动的笔记本)
计算机地址分配的方法
DHCP服务器可进行跨网段分配:
服务器创建多个子网域
路由器某接口写上
Rounter(config-if)#ip helper-address xxx.xxx.xxx.xxx(DHCP服务器地址)
这样,当路由器收到主机发出的广播,会将其变为定向
释放租约
ipconfig /release
互联网传输文件,多用该协议。
TCP控制连接:+端口21,传送文件操作命令,例如增删改移动
TCP数据连接(进行上传下载)分为以下两种:
主动模式 FTP客户端告诉FTP服务器,客户端使用端口n侦听
FTP服务器和FTP客户端的端口n建立连接 FTP服务器源端口20
被动模式 FTP服务器打开一个新端口n进行侦听 等待FTP客户端的连接 ,再
被动模式FTP不能下载数据
FTP传输模式
在FTP端设有防火墙 只打开21和20端口,仅使用主动模式进行数据连接
简单的远程终端协议,是因特网的正式标准
TELNET命令默认+23端口
eg. 远程调试网络设备
.(如对路由器配置:通过主机将命令传送给路由器)
eg.远程管理
(由通过网络将主机命令给另一台主机执行)
可以进行多种操作
net user administrator al! \*更改用户密码
net user user aLICE al! /add \*添加用户
(类似于同一台计算机上的不同用户):Linux
可用于远程管理服务器
将用户添加到远程桌面组 Remote Desk User组
Server是多用户操作系统,启用远程桌面可以多用户同时使用服务器(操作系统)
XP和Windows单用户操作系统
提供分布式服务,可以互相访问(通过建立关联,相互查找)
万维网相关概念:
客户服务器方式 | 客户程序 | 浏览器 | 服务器程序 | 万维网服务器 | 页面 | 统一资源定位符URL | HTTP使用TCP连接 | 超文本标记语言HTML | 搜索引擎 |
---|
URL(Uniform Resource Locator,统一资源定位符):两部分组成,而在URL中的字符对大写或小写没有要求。URL的一半形式为:
<协议>://<主机>:<端口>/<路径>
端口相同时,采用主机头区分(域名)
电子邮件(SMTP,POP3,IMAP)
HTTP+SSL加密算法
保证安全性
传输层与应用层之间的关系
用端口区分服务(网络标识)
熟知端口:数值一般为0~1023
目标端口
HTTP=TCP+80端口(801端口)
HTTPS=TCP+443端口 [前端面试中常问]
FTP=TCP+21端口;邮箱
SMTP=TCP+25端口;发邮件
POP3=TCP+110端口;收邮件
RDP=TCP+3389端口
计算机共享文件夹(下载拷贝)=TCP+445端口
SQL=TCP+1433端口
DNS=UDP+53端口 or TCP+53(偶尔)
TELNET:23
熟知端口:
熟知端口:
eg.网站不能访问,测试端口
客户端请求服务,数据报通过IP地址找到服务器,端口一直在侦听
更改端口增加服务器安全