当前位置:网站首页>实验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面向连接的工作过程;

分析完成后重置模拟器,清空事件。
边栏推荐
- 面试官:生成订单30分钟未支付,则自动取消,该怎么实现?
- 【MQ我可以讲一个小时】
- 110 MySQL interview questions and answers (continuously updated)
- mysql5.7.35安装配置教程【超级详细安装教程】
- Summary of MySQL common interview questions (recommended collection!!!)
- docker安装postgresSQL和设置自定义数据目录
- 三次握手与四次挥手
- DVWA installation tutorial (understand what you don't understand · in detail)
- 分布式事务——分布式事务简介、分布式事务框架 Seata(AT模式、Tcc模式、Tcc Vs AT)、分布式事务—MQ
- mysql uses on duplicate key update to update data in batches
猜你喜欢

The interviewer asked me TCP three handshake and four wave, I really

Typec手机有线网卡网线转网口转接口快充方案

Kubernetes 证书可用年限修改

目标检测学习笔记

STM32 - DMA

数据库上机实验7 数据库设计

Anaconda configure environment directives

Moment Pool Cloud quickly installs packages such as torch-sparse and torch-geometric

Simple read operation of EasyExcel

Unity resources management series: Unity framework how to resource management
随机推荐
MySQL forgot password
剑指offer基础版 ----第31天
Object Detection Study Notes
MySQL_关于JSON数据的查询
分布式事务处理方案大 PK!
Anaconda配置环境指令
docker安装postgresSQL和设置自定义数据目录
再见了繁琐的Excel,掌握数据分析处理技术就靠它了
【一起学Rust】Rust的Hello Rust详细解析
Interview Redis High Reliability | Master-Slave Mode, Sentinel Mode, Cluster Cluster Mode
面试官竟然问我怎么分库分表?幸亏我总结了一套八股文
Workflow番外篇
MySQL-Explain详解
如何将项目部署到服务器上(全套教程)
数据库学习笔记
【MySQL8入门到精通】基础篇- Linux系统静默安装MySQL,跨版本升级
剑指offer基础版 ---- 第29天
关于小白安装nodejs遇到的问题(npm WARN config global `--global`, `--local` are deprecated. Use `--location=glob)
【MQ我可以讲一个小时】
2022-07-30:以下go语言代码输出什么?A:[]byte{} []byte;B:[]byte{} []uint8;C:[]uint8{} []byte;D:[]uin8{} []uint8。