同一主机上运行的进程之间的通信:
进程间通信机制
操作系统提供
不同主机上运行的进程如何通信:
消息交换/报文交换
客户机进程:发起通信的进程
服务器进程:等待通信请求的进程
注意:在P2P网络应用体系结构中也存在客户机与服务器进程
套接字(socket):操作系统提供的一种抽象,将计算机网络各层协议抽象化
进程之间通信是利用socket发送/接收消息
传输基础设施向进程提供API
socket是网络中的API(网络应用的开发需要运用到socket,即socket编程)
寻址进程
不同主机上的进程间通信,每个进程必须拥有标识符
IP地址可以唯一标识internet上的任何一台主机
主机有了IP地址后,仍然不足以进行进程定位,因为一台机器可能存在多个不同的进程
为主机每一个需要通信的进程分配一个端口号
HTTP Server :80端口
Mail Server:25端口
进程的标识符:IP地址+端口号
应用层协议(消息交换需要遵循的协议)
公开协议:RFC
允许互操作。
如HTTP,SMTP...都是公开的协议
私有协议
多数P2P文件共享应用
应用层协议的内容
消息的类型
请求消息
响应消息
消息的语法
消息中有哪些字段
每个字段如何描述
字段的含义
字段中信息的含义
规则
进程何时发送/响应消息
进程如何发送/响应消息