您的位置:首页 > 理论基础 > 计算机网络

UNIX环境高级编程-读书笔记-网络编程(四)

2017-06-27 09:30 239 查看
网络通信 总结:

1.不管是UDP还是TCP通信,基本的过程都是,首先建立链接,然后发送消息,然后对方接受消息。

2.网络通信的模式,的书写方法都是固定的,不管是UDP还是TCP。写法固定。

3.网络通信的比较重要的部分是通信报文的设计,下面详解:

网络通信报文的书写

1.报文的两种的组织形式。

1.使用结构体的方法: 定义好各种类型的消息结构体,然后在发送消息的时候,对结构体对象的里面的成员进行

相应的赋值,在接受方,就收消息,使用同样类型的结构体,然后对消息里面的各种数据

成员进行解析,在处理。使用这种方式处理,简单,容易处理。

2.使用消息组合的方法:就是把要发送的消息的内容,按一定的序列进行组合,说实在的就是拼接在一起,在拼接的时候使用一些标识符进行分隔。

然后发送,在接受端,接受消息以后,要对消息按照和发送端相反的顺序进行分解,从而得到具体的消息的指令或者是请求

网络通信的服务器的类型:

1.循环服务器

就是服务器会循环的接受,客户端或者是发送端的各种请求然后处理,但是他永远只是单个线程在处理,当有个客户端没有断开链接的时候

其他的客户端无法进行链接。

2.多进程,多线程服务器

显然就是多个线程。多个进程同时的进行操作,和处理客户端的请求,

其实这个也有多种方法。

1.一种就是属于被动的等待,来一个链接请求,我就创建一个进程或者是线程,但是计算机,允许创建的进程的个数是有限的。

2.一种就是主动的事先创建好一定数量的线程,或者是进程,你来一个请求我就调用一个线程,当你的个数多于我已经创建的个数,那就等待

这就涉及到线程池的概念。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息