软件的六大质量特性
OSI分层 (7层):物理层、数据链路层、 络层、传输层、会话层、表示层、应用层。
TCP/IP分层(4层): 络接口层、 际层、运输层、 应用层。
五层协议 (5层):物理层、数据链路层、 络层、运输层、 应用层。
每一层的协议如下:
物理层:RJ45、CLOCK、IEEE802.3 (中继器,集线器)
数据链路:PPP、HDLC、VLAN、MAC ( 桥,交换机)
络层:IP、ICMP、ARP、RARP、OSPF、IPX、RIP (路由器)
传输层:TCP、UDP
会话层:
表示层:
应用层:FTP、DNS、Telnet、SMTP、HTTP
每一层的作用如下:
物理层:通过媒介传输比特,确定机械及电气规范(比特Bit)
数据链路层:将比特组装成帧和点到点的传递(帧Frame)
络层:负责数据包从源到宿的传递和 际互连(包PackeT)
传输层:提供端到端的可靠 文传递和错误恢复(段Segment)
会话层:建立、管理和终止会话(会话协议数据单元SPDU)
表示层:对数据进行翻译、加密和压缩(表示协议数据单元PPDU)
应用层:允许访问OSI环境的手段(应用协议数据单元APDU)
TCP的三次握手与四次挥手过程
传输控制协议TCP简介:
面向连接的、可靠的、基于字节流的传输层通信协议
将应用层的数据流分割成 文段并发送给目标节点的TCP层
数据包有序 ,对方收到则发送ACK确认,未收到则重传
使用校验和来检验数据在传输过程中是否有误
TCP 文头:
TCP Flags:
URG:紧急指针标志
ACK:确认序 标志
PSH:push标志
RST:重置连接标志
SYN:同步序 ,用户建立连接过程
FIN:finish标志,用于释放连接
三次握手
“握手”是为了建立连接
第一次握手:建立连接时,客户端发送SYN包(syn=x)到服务器,并进入SYN_SEND状态,等待服务器确认;
第二次握手:服务器收到SYN包,必须确认客户的SYN(ack=x+1),同时自己发送一个SYN包(syn=y),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端接收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。
握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连接之前,TCP 连接都将被一直保持下去。
TCP的三次握手过程什么会采用三次握手,若采用二次握手可以吗/strong>
答:建立连接的过程是利用客户服务器模式,假设主机A为客户端,主机B为服务器端。
(1)TCP的三次握手过程:主机A向B发送连接请求;主机B对收到的主机A的 文段进行确认;主机A再次对主机B的确认进行确认。
(2)采用三次握手是为了防止失效的连接请求 文段突然又传送到主机B,因而产生错误。失效的连接请求 文段是指:主机A发出的连接请求没有收到主机B的确认,于是经过一段时间后,主机A又重新向主机B发送连接请求,且建立成功,顺序完成数据传输。考虑这样一种特殊情况,主机A第一次发送的连接请求并没有丢失,而是因为 络节点导致延迟达到主机B,主机B以为是主机A又发起的新连接,于是主机B同意连接,并向主机A发回确认,但是此时主机A根本不会理会,主机B就一直在等待主机A发送数据,导致主机B的资源浪费。
(3)采用两次握手不行,原因就是上面说的失效的连接请求的特殊情况。
四次挥手
与建立连接的“三次握手”类似,断开一个TCP连接则需要“四次握手”。
第一次挥手:主动关闭方发送一个FIN,用来关闭主动方到被动关闭方的数据传送,也就是主动关闭方告诉被动关闭方:我已经不会再给你发数据了(当然,在fin包之前发送出去的数据,如果没有收到对应的ack确认 文,主动关闭方依然会重发这些数据),但是,此时主动关闭方还可以接受数据。
第二次挥手:被动关闭方收到FIN包后,发送一个ACK给对方,确认序 为收到序 +1(与SYN相同,一个FIN占用一个序 )。
第三次挥手:被动关闭方发送一个FIN,用来关闭被动关闭方到主动关闭方的数据传送,也就是告诉主动关闭方,我的数据也发送完了,不会再给你发数据了。
第四次挥手:主动关闭方收到FIN后,发送一个ACK给被动关闭方,确认序 为收到序 +1,至此,完成四次挥手。
为什么会有TIME_WAIT状态/strong>
确保有足够的时间让对方收到ACK包。如果服务端没有收到,到达等待时间会请求客户端重新发送,如果客户端在2MSL中没有收到消息,证明客户端已经收到了断开连接的确认信息,这时可以关闭客户端了。
为什么需要四次挥手才能断开连接/strong>
因为全双工,发送方和接收方都需要FIN和ACK 文才会断开连接。
TCP和UDP的区别/h3>
答:TCP提供面向连接的、可靠的数据流传输,而UDP提供的是非面向连接的、不可靠的数据流传输。
TCP传输单位称为TCP 文段,UDP传输单位称为用户数据 。
TCP注重数据安全性,UDP数据传输快,因为不需要连接等待,少了许多操作,但是其安全性却一般。
TCP对应的协议和UDP对应的协议
TCP对应的协议:
(1) FTP:定义了文件传输协议,使用21端口。
(2) Telnet:一种用于远程登陆的端口,使用23端口,用户可以以自己的身份远程连接到计算机上,可提供基于DOS模式下的通信服务。
(3) SMTP:邮件传送协议,用于发送邮件。服务器开放的是25 端口。
(4) POP3:它是和SMTP对应,POP3用于接收邮件。POP3协议所用的是110端口。
(5)HTTP:是从Web服务器传输超文本到本地浏览器的传送协议。
UDP对应的协议:
(1) DNS:用于域名解析服务,将域名地址转换为IP地址。DNS用的是53 端口。
(2) SNMP:简单 络管理协议,使用161 端口,是用来管理 络设备的。由于 络设备很多,无连接的服务就体现出其优势。
(3) TFTP(Trival File Transfer Protocal),简单文件传输协议,该协议在熟知端口69上使用UDP服务。
DNS域名系统,简单描述其工作原理。
答:当DNS客户机需要在程序中使用名称时,它会查询DNS服务器来解析该名称。客户机发送的每条查询信息包括三条信息:指定的DNS域名,指定的查询类型,DNS域名的指定类别。基于UDP服务,端口53. 该应用一般不直接为用户使用,而是为其他应用服务,如HTTP,SMTP等在其中需要完成主机名到IP地址的转换。
1) 客户机向其本地域名服务器发出DNS请求 文
2) 本地域名服务器收到请求后,查询本地缓存,假设没有该记录,则以DNS客户的身份向根域名服务器发出解析请求
3) 根域名服务器收到请求后,判断该域名所属域,将对应的顶级域名服务器的IP地址返回给本地域名服务器
4) 本地域名服务器向顶级域名服务器发出解析请求 文
5) 顶级域名服务器收到请求后,将所对应的授权域名服务器的IP地址返回给本地域名服务器
6) 本地域名服务器向授权域名服务器发起解析请求 文
7) 授权域名服务器收到请求后,将查询结果返回给本地域名服务器
8) 本地域名服务器将查询结果保存到本地缓存,同时返回给客户机
了解交换机、路由器、 关的概念,并知道各自的用途
答:1)交换机
在计算机 络系统中,交换机是针对共享工作模式的弱点而推出的。交换机拥有一条高带宽的背部总线和内部交换矩阵。交换机的所有的端口都挂接在这条背部总线上,当控制电路收到数据包以后,处理端口会查找内存中的地址对照表以确定目的MAC( 卡的硬件地址)的NIC( 卡)挂接在哪个端口上,通过内部交换矩阵迅速将数据包传送到目的端口。目的MAC若不存在,交换机才广播到所有的端口,接收端口回应后交换机会“学习”新的地址,并把它添加入内部地址表 中。
交换机工作于OSI参考模型的第二层,即数据链路层。交换机内部的CPU会在每个端口成功连接时,通过ARP协议学习它的MAC地址,保存成一张 ARP表。在今后的通讯中,发往该MAC地址的数据包将仅送往其对应的端口,而不是所有的端口。因此,交换机可用于划分数据链路层广播,即冲突域;但它不能划分 络层广播,即广播域。
2)路由器
路由器的一个作用是连通不同的 络,另一个作用是选择信息传送的线路。 路由器与交换器的差别,路由器是属于OSI第三层的产品,交换器是OSI第二层的产品(这里特指二层交换机)。
3) 关
关(Gateway), 关是连接两个 络的设备,
在传统TCP/IP术语中, 络设备只分成两种,一种为 关(gateway),另一种为主机(host)。 关能在 络间转递数据包,但主机不能转送数据包。在主机中,数据包需经过TCP/IP四层协议处理,但是在 关只需要到达 际层,决定路径之后就可以转送。
在现代 络术语中, 关(gateway)与路由器(router)的定义不同。 关(gateway)能在不同协议间移动数据,而路由器(router)是在不同 络间移动数据.
对于以太 中的 关只能转发三层以上数据包,这一点和路由是一样的。而不同的是 关中并没有路由表,他只能按照预先设定的不同 段来进行转发。 关最重要的一点就是端口映射,子 内用户在外 看来只是外 的IP地址对应着不同的端口,这样看来就会保护子 内的用户。
HTTP详解
协议简介
HTTP(HyperText Transfer Protocol)超文本传输协议,是TCP/IP协议集中的一个应用层协议,用于定义浏览器和Web服务器之间交换数据的过程以及数据本身的格式。HTTP 1.0的会话方式:
Connection:keep-alive:客户端通知服务器返回本次请求结果后保持连接
Connection:close:客户端通知服务器返回本次请求结果后关闭连接
HTTP主要特点
HTTP信息头

ARP是地址解析协议,简单语言解释一下工作原理。
答:
1:首先,每个主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示IP地址和MAC地址之间的对应关系。
2:当源主机要发送数据时,首先检查ARP列表中是否有对应IP地址的目的主机的MAC地址,如果有,则直接发送数据,如果没有,就向本 段的所有主机发送ARP数据包,该数据包包括的内容有:源主机 IP地址,源主机MAC地址,目的主机的IP 地址。
3:当本 络的所有主机收到该ARP数据包时,首先检查数据包中的IP地址是否是自己的IP地址,如果不是,则忽略该数据包,如果是,则首先从数据包中取出源主机的IP和MAC地址写入到ARP列表中,如果已经存在,则覆盖,然后将自己的MAC地址写入ARP响应包中,告诉源主机自己是它想要找的MAC地址。
4:源主机收到ARP响应包后。将目的主机的IP和MAC地址写入ARP列表,并利用此信息发送数据。如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。
广播发送ARP请求,单播发送ARP响应
各种协议的介绍
ICMP协议: 因特 控制 文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。
FTP协议: 是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。
HTTP协议: 超文本传输协议,是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。
NAT协议: 络地址转换属接入广域 (WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技术,
DHCP协议:动态主机配置协议,是一种让系统得以连接到 络上,并获取所需要的配置参数手段,使用UDP协议工作。具体用途:给内部 络或 络服务供应商自动分配IP地址,给用户或者内部 络管理员作为对所有计算机作中央管理的手段。
描述RARP协议
RARP是逆地址解析协议,作用是完成硬件地址MAC到IP地址的映射,主要用于无盘工作站,因为给无盘工作站配置的IP地址不能保存。
工作流程:在 络中配置一台RARP服务器,里面保存着IP地址和MAC地址的映射关系,当无盘工作站启动后,就封装一个RARP数据包,里面有其MAC地址,然后广播到 络上去,当服务器收到请求包后,就查找对应的MAC地址的IP地址装入响应 文中发回给请求者。
因为需要广播请求 文,因此RARP只能用于具有广播能力的 络
TCP三次握手和四次挥手的全过程
三次握手:
第一次握手:客户端发送syn包(syn=x)到服务器,并进入SYN_SEND状态,等待服务器确认;
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=x+1),同时自己也发送一个SYN包(syn=y),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。
握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连接之前,TCP 连接都将被一直保持下去。
四次挥手
与建立连接的“三次握手”类似,断开一个TCP连接则需要“四次握手”。
第一次挥手:主动关闭方发送一个FIN,用来关闭主动方到被动关闭方的数据传送,也就是主动关闭方告诉被动关闭方:我已经不会再给你发数据了(当然,在fin包之前发送出去的数据,如果没有收到对应的ack确认 文,主动关闭方依然会重发这些数据),但是,此时主动关闭方还可以接受数据。
第二次挥手:被动关闭方收到FIN包后,发送一个ACK给对方,确认序 为收到序 +1(与SYN相同,一个FIN占用一个序 )。
第三次挥手:被动关闭方发送一个FIN,用来关闭被动关闭方到主动关闭方的数据传送,也就是告诉主动关闭方,我的数据也发送完了,不会再给你发数据了。
第四次挥手:主动关闭方收到FIN后,发送一个ACK给被动关闭方,确认序 为收到序 +1,至此,完成四次挥手。
数据 服务和虚电路服务的区别
数据 服务和虚电路服务属于物理层的分组交换
第一,数据 服务在传输前不需要与目的地址建立连接,虚电路必须要
第二,数据 每个分组都有完整的目的地址,虚电路服务仅在建立连接阶段使用,之后使用虚电路
第三,数据 的每个分组独立进行路由选择和转发,虚电路服务属于同一条虚电路的分组按同一路由转换
第四、数据 服务不保证有序到达,虚电路服务保证有序到达
如何实现可靠传输/h3>
1) 检验和
2) 定时器
3) 序
4) 确认
流量控制与拥塞控制
流量控制:A与B连接建立后,B根据自己接收缓存的大小确定窗口值大小,然后告知A,A发送的数据不大于该窗口值,往往是点对点之间的通信量控制
拥塞控制是防止过多的数据注入 络中,根据整个 络的负载进行调整。
数字信 与模拟信 的区别与联系
【数字信 定义】
数字信 指自变量是离散的、因变量也是离散的信 ,这种信 的自变量用整数表示,因变量用有限数字中的一个数字来表示。在计算机中,数字信 的大小常用有限位的二进制数表示。
由于数字信 是用两种物理状态来表示0和1的,故其抵抗材料本身干扰和环境干扰的能力都比模拟信 强很多;在现代技术的信 处理中,数字信 发挥的作用越来越大,几乎复杂的信 处理都离不开数字信 ;或者说,只要能把解决问题的方法用数学公式表示,就能用计算机来处理代表物理量的数字信 。
【模拟信 定义】
模拟信 是指用连续变化的物理量所表达的信息,模拟信 其特点是幅度连续(连续的含义是在某一取值范围内可以取无限多个数值)。模拟信 ,其信 波形在时间上也是连续的,因此它又是连续信 。模拟信 按一定的时间间隔T抽样后的抽样信 ,由于其波形在时间上是离散的,但此信 的幅度仍然是连续的,所以仍然是模拟信 。电话、传真、电视信 都是模拟信 。
信 抽样后时间离散,但辐值不离散。常见的抽样信 是周期矩形脉冲和周期冲激脉冲抽样。模拟信 在整个时间轴上都是有定义的,在“没有幅值”的区域的意义是幅值为零。而离散时间信 只在离散时刻上才有定义,其他地方没有定义,和幅值为零是不同概念,这两种信 在时间轴看上去很相似,其实是以不同类型的系统为基础的两种有本质区别的信 。直观的说,离散时间信 的横轴可以认为已经不代表时间了。
【二者区别】
不同的数据必须转换为相应的信 才能进行传输:模拟数据(模拟量)一般采用模拟信 ,例如用一系列连续变化的电磁波(如无线电与电视广播中的电磁波),或电压信 (如电话传输中的音频电压信 )来表示;数字数据(数字量)则采用数字信 ,例如用一系列断续变化的电压脉冲(如我们可用恒定的正电压表示二进制数1,用恒定的负电压表示二进制数0),或光脉冲来表示。 当模拟信 采用连续变化的电磁波来表示时,电磁波本身既是信 载体,同时作为传输介质;而当模拟信 采用连续变化的信 电压来表示时,它一般通过传统的模拟信 传输线路(例如电话 、有线电视 )来传输。 当数字信 采用断续变化的电压或光脉冲来表示时,一般则需要用双绞线、电缆或光纤介质将通信双方连接起来,才能将信 从一个节点传到另一个节点。
【二者联系】
模拟信 和数字信 之间可以相互转换:模拟信 一般通过PCM脉码调制方法量化为数字信 ,即让模拟信 的不同幅度分别对应不同的二进制值,例如采用8位编码可将模拟信 量化为2^8=256个量级,实用中常采取24位或30位编码;数字信 一般通过对载波进行移相(Phase Shift)的方法转换为模拟信 。计算机、计算机局域 与城域 中均使用二进制数字信 ,21世纪在计算机广域 中实际传送的则既有二进制数字信 ,也有由数字信 转换而得的模拟信 。但是更具应用发展前景的是数字信 。
文章知识点与官方知识档案匹配,可进一步学习相关知识 络技能树首页概览22462 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!