2.1应用层原理
一,架构
1)C/S模式
服务器农场模式,服务器一直运行,客户去请求服务器来获取服务,所有资源都在服务器
服务器一般是固定的IP地址
客户的IP可以随意变
缺点是:
不易扩展
可靠性差
性能下降非线性,达到一个阈值,性能断崖式下降。
2)点对点(P2P)模式
没有一直运行的服务器
客户端也是服务器
缺点:
不好管理
3)混合体(Napster)
文件传输使用P2P模式,但有一个中心服务器,这个服务器仅仅提供信息汇总和协调作用,比如告诉其他人有哪些资源,而资源的传输则是靠P2P模式。
二,分布式进程通讯
1)进程的标识和寻址
1.标识(谁发的,东西,谁该收)
要确定一个进程的素包含:
- IP
- 协议
- 端口号(port)
IP确定主机,根据协议和端口号确定应用的进程
不过由于每次都要传输这个信息,为了简化,减少信息量,引入了socket
socket
socket 可以体现上面三样东西,对用户来说表示为一个整数
例如:
IP:1.1.1.1,端口:80socket的值为6666
IP:2.2.2.2,端口:233socket的值为114514
根据这个整数查表,就知道IP和端口
对于内核层面而讲,这个整数相当于一个连接双方的管道
通过这个管道,就能进行双方的连接
TCP socket
TCP socket 包含了我的IP和端口,目标IP和端口
UDP socket
只包含本地IP和端口
后记
虽然内容少,但理解起来真抽象
本文来自博客园,作者:漫宿骄盛,转载请注明原文链接:https://www.cnblogs.com/msjs/p/18843452
都是顺手发的,写的时候可能有错误,如果发现了,望各位指出。

浙公网安备 33010602011771号