socket编程
预备知识
进程是人在系统中的代表,只要把数据给进程,人就相当于拿到了数据。
网络通信的本质:两个不同主机的进程在进行数据交互。(即进程间的通信!)
认识端口号和Socket(套接字)
端口号
在网络通信的过程中,有非常多的进程,如何确认目标主机的进程呢?
端口号(port)是传输层协议的内容。
端口号可以用来标识系统中唯一的网络进程。
socket
IP地址:⽤来标识互联⽹中唯⼀的⼀台主机。
port(端口号):⽤来标识该主机上唯⼀的⼀个⽹络进程。
所以,通信的时候,本质是两个互联⽹进程代表⼈来进⾏通信,{srcIp,srcPort,dstIp,dstPort},这样的4元组就能标识互联⽹中唯⼆的两个进程。
IP+Port = 全网内唯一的进程。
socket (套接字)= IP + Port

传输层的典型代表
TCP协议
1.传输层协议
2.有连接
3.可靠传输
4.面向字节流
UDP协议
1.传输层协议
2.无连接
3.不可靠传输
4.面向数据报
网络字节序
如何定义网络数据流的地址呢?
TCP/IP协议规定,凡是发送到网络中的数据,必须是大端(先发出的数据是低地址,后发出的数据是高地址)。
socket编程接口
socket会有很多的种类,来满足不同的应用场景。
(完)