网络应用的工作原理
-
网络应用的结构是什么?
-
C/S结构:客户端/服务器,需要建立服务器连接,客户端向服务器发请求,由服务器广播,降低通信成本,比如文字聊天这种并发式服务
-
P2P结构:点对点结构,不需要建立服务器连接,易扩展难维护,比如一对一小班课
-
混合结构:C/S结构和P2P点对点混合结构
-
-
网络应用进程间是怎么通信的?
-
网络应用进程间采用socket通信原理,Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。
-
Socket通信过程:服务器初始化Socket与端口绑定,对端口进行监听,调用accept阻塞,等待客户端连接。这时如果客户端初始化一个Socket,然后连接服务器,如果连接成功,客户端与服务器端的连接就建立了。客户端发送数据请求,服务器接收请求并处理,然后把数据发给客户端。
-
-
网络应用应用层协议的内容是什么?
-
常见的互联网应用应用层协议有http协议,协议内容包含以下四点:
-
消息的类型:请求消息、响应消息
-
消息的语法/格式:消息中有哪些字段?每个字段如何描述?
-
字段的语义:字段中信息的含义
-
规则:进程何时发送/响应消息?进程如何发送?响应消息
-
-
-
网络应用的需求是什么?
网络应用主要是进行数据传输,那么数据传输需要考虑的点有3个
-
可靠性
-
时延
-
带宽
-
-
网络应用传输层服务有哪些?
-
TCP服务
-
面向连接:TCP传输,客户端和服务器之间需要建立连接(3次握手)
-
可靠的传输:丢包重传
-
流量控制:发送方确认接收方在的时候才会发送数据
-
拥塞控制:当网络负载过重时能限制发送方的发送速度
-
不提供时延保障
-
不提供最小带宽保障
-
-
UDP服务
-
无连接:不提供复杂的控制机制,利用IP提供面向无连接的通信服务
-
不可靠的传输:直接丢包不重传
-
不提供流量控制:udp收到应用发来的数据时立刻按照原样发到网络上,即使出现网络拥堵,也无法进行流量控制
-
不提供拥塞控制:udp收到应用发来的数据时立刻按照原样发到网络上,即使出现网络拥堵,也无法进行拥塞控制
-
不提供延时保障
-
不提供带宽保障
-
-
网友评论