1、什么是TCP/IP和UDP
TCP/IP即传输控制/网络协议,是面向连接的协议,发送数据前要先建立连接(发送方和接收方的成
对的两个之间必须建 立连接),TCP提供可靠的服务,也就是说,通过TCP连接传输的数据不会丢
失,没有重复,并且按顺序到达
UDP它是属于TCP/IP协议族中的一种。是无连接的协议,发送数据前不需要建立连接,是没有可
靠性的协议。因为不需要建立连接所以可以在在网络上以任何可能的路径传输,因此能否到达目的
地,到达目的地的时间以及内容的正确性都是不能被保证的。
2、TCP与UDP区别:
TCP是面向连接的协议,发送数据前要先建立连接,TCP提供可靠的服务,也就是说,通过TCP连接传输的数据不会丢失,没有重复,并且按顺序到达;
UDP是无连接的协议,发送数据前不需要建立连接,是没有可靠性;
TCP通信类似于于要打个电话,接通了,确认身份后,才开始进行通行;
UDP通信类似于学校广播,靠着广播播报直接进行通信。
TCP只支持点对点通信,UDP支持一对一、一对多、多对一、多对多;
TCP是面向字节流的,UDP是面向报文的; 面向字节流是指发送数据时以字节为单位,一个数据
包可以拆分成若干组进行发送,而UDP一个报文只能一次发完。
TCP首部开销(20字节)比UDP首部开销(8字节)要大
UDP 的主机不需要维持复杂的连接状态表
3、TCP和UDP的应用场景:
对某些实时性要求比较高的情况使用UDP,比如游戏,媒体通信,实时直播,即使出现传输错误也可以容忍;其它大部分情况下,HTTP都是用TCP,因为要求传输的内容可靠,不出现丢失的情况。
4、形容一下TCP和UDP
TCP通信可看作打电话:
李三(拨了个号码):喂,是王五吗? 王五:哎,您谁啊? 李三:我是李三,我想给你说点事儿,你现在方便吗? 王五:哦,我现在方便,你说吧。 甲:那我说了啊? 乙:你说吧。 (连接建立了,接下来就是说正事了…)
UDP通信可看为学校里的广播:
播音室:喂喂喂!全体操场集合
5、运行在TCP 或UDP的应用层协议分析。
运行在TCP协议上的协议:
HTTP(Hypertext Transfer Protocol,超文本传输协议),主要用于普通浏览。
HTTPS(HTTP over SSL,安全超文本传输协议),HTTP协议的安全版本。
FTP(File Transfer Protocol,文件传输协议),用于文件传输。
POP3(Post Office Protocol, version 3,邮局协议),收邮件用。
SMTP(Simple Mail Transfer Protocol,简单邮件传输协议),用来发送电子邮件。
TELNET(Teletype over the Network,网络电传),通过一个终端(terminal)登陆到网络。
SSH(Secure Shell,用于替代安全性差的TELNET),用于加密安全登陆用。
运行在UDP协议上的协议:
BOOTP(Boot Protocol,启动协议),应用于无盘设备。
NTP(Network Time Protocol,网络时间协议),用于网络同步。
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议),动态配置IP地址。
运行在TCP和UDP协议上:
DNS(Domain Name Service,域名服务),用于完成地址查找,邮件转发等工作。
ECHO(Echo Protocol,回绕协议),用于查错及测量应答时间(运行在TCP和UDP协议上)。
SNMP(Simple Network Management Protocol,简单网络管理协议),用于网络信息的收集和网络管理。
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议),动态配置IP地址。
ARP(Address Resolution Protocol,地址解析协议),用于动态解析以太网硬件的地址。