计算机网络体系结构概述
主机间的通信方式
客户端(C/S):客户是服务请求方,服务器是服务提供方。
对等(P2P):不区分客户和服务器,每个既可以充当客户端,也可以充当服务器。
电路交换和分组交换
1电路交换:用于电话通信系统,两个用户在通信之前需要建立专用的物理链路,并且通信过程中始终需要占据该链路。对链路利用率很低。
2分组交换:分组都有首部和尾部,包含源地址和目的地址等控制信息(五元组:源IP地址、目的IP地址、协议号、源端口、目的端口)。
时延
总时延=排队时延 + 处理时延 + 传输时延 + 传播时延
五层协议
应用层:为特定应用程序提供数据传输服务,例如HTTP,DNS等协议。
传输层:为进程提供通用数据传输服务。例如TCP,UDP.
网络层:为主机提供数据传输服务。网络层把传输层传递下来的报文段或者用户数据封装为分组。
数据链路层:网络层针对的还是主机之间的服务,而主机之间有很多链路,数据链路层把网络层传下来的分组封装成帧。
物理层:物理层的作用是尽可能地屏蔽传输媒体和通信手段之间的差异。
TCP/IP四层
相当于传统五层协议中的数据链路层和物理层合并为网络接口层。
网络体系概述常见面试题
1.OSI与TCP/IP各层的结构和功能,都有那些协议?
结合互联网情况,自上而下 介绍各层作用。
1应用层
应用层的任务是通过应用进程间的交互来完成特定网络应用。应用层协议定义的是应用进程之间的通信和交互规则。不同的网络应用需要不同应用层协议,互联网中应用层协议有:DNS,HTTP,SMTP等等,应用层交互的数据单元称为报文。
域名系统:
域名系统简称DNS,是因特网上的一项核心服务,作为一个将域名和ip地址相互映射的分布式的数据库,人们能够更方便的访问互联网,不需要记住ip地址。
HTTP协议
超文本传输协议是互联网上应用最为广泛的一种网络协议,所有的万维网文件都必须遵守这个标准,设计HTTP最初的目的就是提供一种发布和接受html页面的方法。
2传输层
传输层的主要任务就是负责向两台主机进程之间的通信提供通用的数据传输服务。应用进程利用该服务传送应用层报文。通用的意思就是不针对某一个特定的网络应用,而是多种应用可以使用同一个传输层服务。一台主机可以运行多个线程,所以运输层有复用和分用的功能。
传输层协议包括:
传输控制协议TCP(Transmission Control Protocol)–提供面向连接的,可靠的数据传输服务。
用户数据协议UDP(User Datagram Protocol)–提供无连接的,尽最大努力的数据传输服务。
UDP:
- 无连接的
- 不保证可靠交付
- 面向报文
- 没有拥塞控制,
- 一对一,一对多,多对一的交换通信
- UDP的首部开销小,8个字节,TCP20个字节
TCP:
- 面向连接的
- 每一条TCP连接只能有两个端点,每一条TCP连接都是点对点的
- TCP提供可靠交付的服务,通过TCP连接传输的数据,无差错,不丢失,不重复,并且按序到达。
- TCP提供全双工的通信。TCP允许通信双方在任何时候都可以发送数据,TCP连接的两端设有发送缓存和结构缓存 来临时存放双方通信的数据。
- 面向字节流,TCP把应用程序里的数据看作一串无结构的字节流。
3网络层
在计算机网络中通信的两个计算机之间会有很多数据链路和通信子网,网络层的任务就是选择合适的网间路由和交换节点,确保数据能够及时传送。发送数据时,网络层把运输层产生的报文段和用户数据封装成分组和包进行传送。
网络层的协议主要包括ip协议和许多路由选择协议。
4数据链路层
用于两台主机之间的数据传输,总是在一段段的链路上传送的专门的链路层协议。在两个相邻节点之间传送数据时,数据链路层将网络层交下来的 IP 数据报组装程帧,在两个相邻节点间的链路上传送帧。每一帧包括数据和必要的控制信息(如同步信息,地址信息,差错控制等)。
5物理层
在物理层上传送的数据单位是比特,实现了相邻计算机结点之间比特流的透明传输,尽可能屏蔽掉实际电路传送后比特流没有发生变化。