- 概述:
- 1、协议和服务之间的区别(协议是水平的,服务是垂直的)
- 2、计算机网络有那些层
- 应用层通过主机中进程的交互完成特定的网络应用。运输层提供两台主机间的进程之间的通信。网络层对传输层传下来的数据包封装,通过路由交换、转发传送到目的地。链路层为同一链路的节点提供服务,封装成帧。物理层考虑如何在传输媒介上传输数据比特流。
- 3、面向连接的服务以及无连接的服务:
- 面向连接的服务是先建立连接在通信,无连接的服务是尽最大努力交付。
- 物理层:
- 功能:电气特性、功能特性、过程特性、机械特性
- 主要设备:集线器(多端口的中继器),中继器(信号再生)
- 数据交换方式:电路交换、报文交换、分组交换(数据报交换、虚电路交换)
- 数据链路层:
- 功能:
- 封装成帧、透明传输、差错分析、流量控制
- 组帧(帧定界、帧同步、透明传输)的方式:
- 字符计数法(在帧的首部加上计数字段)、字符填充(用特殊的字符去作为首位定界符)、0比特填充(在5个连续的1后面加上一个0)、违规编码(在差分曼彻斯特编码由高到低表示1,则由低到高表示1,高高和低低就是违规编码)
- 差错控制:
- 检错编码(奇偶校验,CRC)和纠错编码(海明码)
- 流量控制:
- 停等协议、后退N帧、选择重传
- 随机访问介质控制机制:
- CSMA/CD协议(碰撞检测):先听后发,边听边发、冲突停发、随机重发
- CSMA/CA协议(碰撞避免):用于无线网,发送时首先预约信道、重发时利用二进制指数退避算法
- 局域网:是在小范围内将各种计算机、外部设备通过介质连接起来形成的资源共享的网络。
- 数据链路层在广域网中的协议——PPP协议(面向字节传输、点到点传输,不可靠)HDLC协议(面向比特,提供可靠传输,采用0比特插入法)
- 链路层设备:(局域网中)网桥、交换机
- 功能:
- 网络层:
- IP地址和MAC地址的区别:
- IP地址是你家的地址,会变,MAC地址是身份证号;链路传输需要MAC地址,网络之间通过路由器转发需要的地址是IP地址;IP地址是逻辑的,MAC地址是物理的。
- IPV4和IPV6之间的区别:
- 长度32-128;安全性
- IPV4到IPV6的互联
- 双栈技术,数据链路层根据收到的IP数据报进行解析头部字段用相应的协议进行处理,隧道技术。
- 虚电路与数据包:
- 虚电路:建立一条虚连接,每个数据报都通过固定的链路到达接收端,有序的;数据包近最大努力交付,无序不可靠。
- 子网划分和掩码
- 因特网中两大类路由选择协议:
- 内部网关协议:RIP(UDP),OSPF(IP,利用迪杰斯特拉最短路径求解)
- 外部网关协议:BGP(TCP)
- ARP为什么属于IP层协议:
- ARP协议是将MAC地址转成IP地址。;而数据数据链路层并不适用IP地址。
- 数据包转发过程中,若路由器不提供NAT地址转换技术则IP地址不会发生变化。
- IP地址和MAC地址的区别:
- 传输层:
- UDP:面向报文段,首部是8个字节(源端口、目的端口、校验位),无连接,提供不可靠服务、没有拥塞控制,流量控制;
- TCP:面向字节流,20B的首部、有连接,提供可靠服务、全双工通信、有流量控制、拥塞控制;
- 如果IP可以可靠传输,就不需要UDP?
- UDP可进行差错分析,提供端到端的服务。
- TCP的三次握手、四次挥手
- 两次握手不可以?会存在滞留的客户机请求到达服务器,服务器进行响应并且误以为已经建立连接,从而浪费资源。
- TCP四次挥手
- 1
- 为什么不是三次?
- 因为服务器还需要传送一些数据。
- 为社么客户端还要在等待2MSL时间(最大报文段生存周期)
- 避免ACK丢失,还可以防止已经失效的连接请求报文
- 重传:超时重传、冗余ACK
- 实现可靠传输的算法:停止等待协议、拥塞控制(慢开始、拥塞避免、快重传、快恢复)
- 应用层:
- 传输方式:cs,p2p
- DNS:基于UDP、域名和IP地址相映射
- FTP:控制连接(21)数据连接(20)
- SMTP(push的方法),POP3(pull的方法)
- HTTP:是万维网可靠交换文件的基础(TCP)
- get:获取请求;post:表示可能修改服务器资源的请求。GET请求的数据会附在URL后面,POST的数据放在HTTP包体,POST安全性比GET安全性高。
- 简述浏览器请求一个网站的过程:
- 首先同于域名解析服务将网站映射相应的IP地址,然后通过网络层、传输层、在应用层利用HTTP协议GET请求网站得到返回值。
- (1)首先是解析域名,DNS进行,获得IP地址。然后端口号发送端随机分配,服务器是固定的80端口。
- (2)知道IP和端口号之后就可以建立3次握手建立TCP连接。
- (3)发送HTTP请求报文。
- (4)服务器处理浏览器发来的请求,返回要显示的页面html信息。
- (5)传输结束,4次握手释放连接。 (6)显示页面。