当前位置:网站首页>实验7 UDP与TCP对比
实验7 UDP与TCP对比
2022-07-31 05:09:00 【Meteor.792】
一、实验目的
- 熟悉UDP与TCP的主要特点及支持的应用协议。
- 理解UDP的无连接通信与TCP的面向连接通信。
- 熟悉TCP报文段和UDP报文的数据封装格式。
二、背景知识
1.UDP
UDP是一个简单的面向数据报的运输层协议。它有如下几个主要特点:
① 无连接;
② 尽最大努力交付,不提供可靠性;
③ 面向报文;
④ 支持一对一、一对多、多对一、多对多的交互通信,组播及广播功能强大。
其中,无连接是其最主要的特点。正是由于UDP的无连接性,使得它不能保证发送出去的数据能到达目的地。但是另一方面,由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,它的传输速率很快,报文段的首部字段也很简单,只有8字节。
UDP支持的应用层协议主要有DNS、NFS、SNMP、TFTP等。目前在中国宽带有线网上开展的一些业务,如视频、咨询、股票等(用PC接受,需要特殊硬件卡),用的几乎全都是UDP,这是基于UDP的 单向特性。
2.TCP
TCP提供可靠的通信服务,它的主要特点有:
① 面向连接;
② 提供可靠交付的服务;
③ 基于字节流的,而非消息流;
④ 不支持多播(Multicast)和广播(Broadcast)。
TCP的面向连接的可靠交付特点保证了它能够提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端,无差错、不丢失、不重复、不失序。当然,可靠性的保证也是要付出代价的,TCP的客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据,因此它的传输速率就比UDP慢,同时,其报文段的首部字段也比UDP要长和复杂得多。
TCP支持的应用协议主要有HTTP、Telnet、FTP、SMTP等。在互联网上,TCP相对UDP的应用就多得多,因为TCP的双向互动特性能满足用户的实时需求,而UDP则太过于被动。
- 实验内容
任务一:按下图要求搭建网络拓扑
Server的域名为udp-tcp.com,提供Web服务和DNS域名解析。
任务二:观察UDP无连接的工作模式
1.捕获UDP事件
在模拟模式下修改事件列表过滤器为UDP事件;
在PC机的Web浏览器中访问udp-tcp.com网站,最小化浏览器;
在模拟面板中捕获UDP事件。
2.分析UDP无连接的工作过程
查看UDP事件的详细信息,观察第4层中UDP报文段的内容;
分析UDP无连接的工作过程;
分析完成后重置模拟器,清空事件。
任务三:观察TCP面向连接的工作模式
1.捕获TCP事件
修改事件列表过滤器为TCP;
重新在PC机中访问Server的主页;
观察捕获到的事件有哪些。
2.捕获TCP事件
查看TCP事件的详细信息,观察第4层中TCP报文段的内容;分析TCP面向连接的工作过程;
分析完成后重置模拟器,清空事件。
边栏推荐
- Object Detection Study Notes
- MySQL(更新中)
- Flink sink ES 写入 ES(带密码)
- [MQ I can speak for an hour]
- Proteus 8 Professional安装教程
- MySQL transaction isolation level, rounding
- C语言指针详解
- About the problems encountered by Xiaobai installing nodejs (npm WARN config global `--global`, `--local` are deprecated. Use `--location=glob)
- MYSQL一站式学习,看完即学完
- Apache DButils使用注意事项--with modifiers “public“
猜你喜欢
精解四大集合框架:List 核心知识总结
The interviewer asked me TCP three handshake and four wave, I really
【MySQL8入门到精通】基础篇- Linux系统静默安装MySQL,跨版本升级
Information System Project Manager Core Test Site (55) Configuration Manager (CMO) Work
MySQL forgot password
再见了繁琐的Excel,掌握数据分析处理技术就靠它了
MySQL window function
Distributed Transactions - Introduction to Distributed Transactions, Distributed Transaction Framework Seata (AT Mode, Tcc Mode, Tcc Vs AT), Distributed Transactions - MQ
如何将项目部署到服务器上(全套教程)
Temporal介绍
随机推荐
【MQ我可以讲一个小时】
The interviewer asked me TCP three handshake and four wave, I really
三次握手与四次挥手
Centos7 install mysql5.7 steps (graphical version)
Mysql application cannot find my.ini file after installation
Anaconda configure environment directives
数据库学习笔记
剑指offer专项突击版 ---- 第 6 天
Moment Pool Cloud quickly installs packages such as torch-sparse and torch-geometric
【一起学Rust】Rust的Hello Rust详细解析
Unity mobile game performance optimization series: performance tuning for the CPU side
剑指offer专项突击版 ---- 第1天
Redis的初识
C语言教程(三)-if和循环
质量小议12 -- 以测代评
Why use Flink and how to get started with Flink?
STM32——DMA
MYSQL下载及安装完整教程
剑指offer基础版 --- 第22天
MySQL transaction isolation level, rounding