地址由IP地址和端口号构成
数据:协议(http tcp udp),协议是一种数据格式
单机的通信用进程间的那五个通信方式,两台电脑间的通信用网络编程
1.TCP和UDP协议的区别
1.TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前,不需要建立连接
2.TCP提供可靠的服务。也就是说,通过TCP连接发送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付。
3.TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流;UDP是面向报文的,UDP没有拥塞控制,因此网络出现拥塞不会使源主机的发送率降低(对实时应用很有用,如IP电话,实时视频会议等)
4.每一条TCO连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信
5.TCP首部开销20字节,UDP首部开销小,只有8个字节
6.TCP的逻辑通信信道是全双工的可靠信道,UDP则是不可靠信道
2.端口的作用
一台拥有IP地址的主机可以提供许多服务,比如 Web服务、FTP服务、SMTP服务等
这些服务完全可以通过1个IP地址来实现。那么,之际是怎样区分不同的网络服务呢?显然不能只靠IP地址,因为IPI地址与网络服务的关系是一对多的关系。
实际上通过“IP地址+端口号”来区分不同的服务的。
端口提供了一种访问通道。
服务器一般都是通过知名端口号来识别的。例如,对于每个TCP/IP实现来说,FTP服务器的TCP端口号都是21,每个Telnet服务器的TCP端口号都是23,每个TFTP(简单文件传送协议)服务器的UDP端口号都是69.
字节序
概述:
指多字节数据在计算机内存中存储或网络传输时各字节的存储顺序。
常见字节序
little endian 小端字节序 将低序字节存储在起始地址 (背)
big endian 大端字节序 将高序字节存储在起始地址 (背)
网络字节序 = 大端字节序
LE:小端 BE:大端
x86系列CPU都是小端的字节序