(考研湖科大教书匠计算机网络)第五章传输层-第一、二节:传输层概述及端口号、复用分用等概念

news2024/9/25 21:23:39
  • 获取pdf:密码7281
  • 专栏目录首页:【专栏必读】考研湖科大教书匠计算机网络笔记导航

文章目录

  • 一:传输层概述
    • (1)概述
    • (2)从计算机网络体系结构角度看传输层
    • (3)传输层意义
  • 二:端口号、复用和分用
    • (1)端口号
      • A:概述
      • B:分类
      • C:TCP/IP体系的应用层常用协议所使用的运输层熟知端口号
    • (2)发送方复用和接收方分用

本节对应视频如下

  • 【计算机网络微课堂(有字幕无背景音乐版)】:传输层概述
  • 【计算机网络微课堂(有字幕无背景音乐版)】:传输层端口号、复用与分用的概念

一:传输层概述

(1)概述

传输层:前面章节所介绍的计算机网络体系结构中的物理层、数据链路层以及网络层它们共同解决了将主机通过异构网络互联起来所面临的问题,实现了主机到主机的通信,但实际上在计算机网络中进行通信的真正实体是位于通信两端主机中的进程如何为运行在不同主机上的应用进程提供直接的通信服务是传输层的任务,传输层协议又称为端到端协议

如下图,AP1和AP2是局域网1上某主机与网络通信相关的两个应用进程,AP3和AP4是局域网2上某主机与网络通信相关的两个应用进程
在这里插入图片描述

(2)从计算机网络体系结构角度看传输层

从计算机网络体系结构角度来看,传输层直接为应用进程间的逻辑通信提供服务。所谓逻辑通信是指,传输层之间的通信好像是沿着水平方向传送数据,但事实上这两个传输层之间并没有一条水平方向上的物理连接,要传送的数据是沿着如下图上下多次的虚线方向传送的

如下图,AP1与AP4之间进行基于网络的通信,AP2与AP3之间进行基于网络的通信。在运输层使用不同的端口来对应不同的应用进程,然后通过网络层及其下层来传输应用层报文。接收方的应用层通过不同的端口将收到的应用层报文交付给应用层相应的应用进程

在这里插入图片描述

(3)传输层意义

传输层:传输层向高层用户屏蔽了下面网络核心的细节(如网络拓扑、所采用的路由选择协议等,它使应用进程看见的就好像是在两个运输层实体之间有条端到端的逻辑通信信道 。根据应用需求的不同,因特网的运输层为应用层提供了两种不同的运输协议,即面向连接的TCP和无连接的UDP,这两种协议就是本章要讨论的主要内容

二:端口号、复用和分用

(1)端口号

A:概述

端口号:运行在计算机上的进程使用进程标识符PID来标志。因特网上的计算机并不是使用统一的操作系统,不同的操作系统(windows, Linux, Mac OS)又使用不同格式的进程标识符。为了使运行不同操作系统的计算机的应用进程之间能够进行网络通信,就必须使用统一的方法对TCP/IP体系的应用进程进行标识。因此,TCP/IP体系的传输层使用端口号来区分应用层的不同应用进程。需要注意的是,端口号只具有本地意义,即端口号只是为了标识本计算机应用层中的各进程,在因特网中,不同计算机中的相同端口号是没有联系的

B:分类

端口号分类:端口号使用1 6比特表示,取值范围0~65535,分为如下三类

  • 熟知端口号 范围为0~1023,IANA把这些端口号指派给了TCP/IP体系中最重要的一些应用协议。例如
    • FTP:21/20
    • HTTP80
    • DNS使用53
  • 登记端口号 范围为024~49151,为没有熟知端口号的应用程序使用,使用这类端口号必须在IANA按照规定的手续登记,以防止重复。例如Microsoft RDP微软远程桌面使用的端口是3389
  • 短暂端口号 范围为49152~65535,留给客户进程选择暂时使用。当服务器进程收到客户进程的报文时,就知道了客户进程所使用的动态端口号。通信结束后,这个端口号可供其他客户进程以后使用

C:TCP/IP体系的应用层常用协议所使用的运输层熟知端口号

如下图,不管在传输层使用UDP还是TCP协议,在网络层都需要使用IP协议。IP数据报首部中协议字段的值表明了IP数据报数据载荷部分封装的是何种协议数据单元

在这里插入图片描述

(2)发送方复用和接收方分用

如下图

  • 发送方复用
    • 发送方某些应用进程所发送的不同应用报文,在传输层可能会使用UDP协议或TCP协议进行封装,分别对应UDP复用TCP复用
    • 传输层使用端口号来区分不同的应用进程
    • 无论是UDP复用而成的UDP用户数据报还是TCP复用而成的TCP报文段,在网络层都需要使用IP协议封装为IP数据报,这称为IP复用
    • IP数据报首部中协议字段的值用来表明IP数据报数据载荷部分封装的是何种协议数据单元
      • 取值为6表示封装的是TCP报文段
      • 取值为17表示封装的是UDP用户数据报
  • 数据传送
  • 接收方分用
    • 接收方网络层收到IP数据报后进行IP分用
      • 若IP数据报首部中协议字段值为17,则把IP数据报数据载荷部分所封装的UDP用户数据报上交传输层的UDP
      • 若IP数据报首部中协议字段值为6,则把IP数据报数据载荷部分所封装的TCP报文段上交传输层的TCP
    • 传输层对UDP用户数据报进行UDP分用、对TCP报文段进行TCP分用,也即根据端口号将它们交付给上层相应的应用进程

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/354625.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL行转列列转行实例解析

文档准备要求:找出所有的用户没有安装的软件。创建两个表,用户表app_install 和 app表app建表语句:# 创建app表,并插入数据 create table app(id int,app varchar(32)); insert into app(id,app) values (1,微信),(2,QQ),(3,支付宝…

二叉树理论基础知识点

二叉树的种类 在我们解题过程中二叉树有两种主要的形式:满二叉树和完全二叉树 满二叉树 满二叉树:如果一棵二叉树只有度为0的结点和度为2的结点,并且度为0的结点在同一层上,则这棵二叉树为满二叉树。 如图所示: 这…

About Oracle Database Performance Method

bottleneck(瓶颈): a point where resource contention is highest throughput(吞吐量): the amount of work that can be completed in a specified time. response time (响应时间): the time to complete a spec…

Java 日志简介

目录1、Slf4j2、Log4j3、LogBack4、Logback 优点5、ELK1、Slf4j slf4j 的全称是 Simple Loging Facade For Java,即它仅仅是一个为 Java 程序提供日志输出的统一接口,并不是一个具体的日志实现方案,就比如 JDBC 一样,只是一种规则…

解决:eclipse绿化版Resource注解报Resource cannot be resolved to a type问题

如图: 网上解决教程很多,我的eclipse是绿化版的,不需要安装 解决办法如下: 1、在eclipse中,进入到Window->Preferences->Java->Installed JREs中 默认显示如下: 2、点击Add-->Standard VM--…

分页插件

引入依赖 注意需要和SpringBoot的版本对应&#xff0c;否则分页可能不生效 使用的分页依赖&#xff1a; <!-- pagehelper 插件--><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</arti…

Dockerfile详解及优化技巧

写在前面 Dockerfile的默认相对路径是Dockerfile所在的目录&#xff1b;Dockerfile中的每一行会被视为一层镜像 一、Dockerfile 原理 1.1 镜像定义 首先我们先来回顾一下 Docker 镜像&#xff0c;它由多个只读层堆叠到一起&#xff0c;每一层是上一层的增量修改。基于镜像创…

深度学习炼丹-数据标准化

前言 一般机器学习任务其工作流程可总结为如下所示 pipeline。 在工业界,数据预处理步骤对模型精度的提高的发挥着重要作用。对于机器学习任务来说,广泛的数据预处理一般有四个阶段(视觉任务一般只需 Data Transformation): 数据清洗(Data Cleaning)、数据整合(Data Integ…

【c语言进阶】深度剖析整形数据

&#x1f680;write in front&#x1f680; &#x1f4dc;所属专栏&#xff1a; &#x1f6f0;️博客主页&#xff1a;睿睿的博客主页 &#x1f6f0;️代码仓库&#xff1a;&#x1f389;VS2022_C语言仓库 &#x1f3a1;您的点赞、关注、收藏、评论&#xff0c;是对我最大的激励…

C++010-C++嵌套循环

文章目录C010-C嵌套循环嵌套循环嵌套循环举例题目描述 输出1的个数题目描述 输出n行99乘法表题目描述 求s1!2!...10!作业在线练习&#xff1a;总结C010-C嵌套循环 在线练习&#xff1a; http://noi.openjudge.cn/ https://www.luogu.com.cn/ 嵌套循环 循环可以指挥计算机重复去…

自命为缓存之王的Caffeine(6)

您好&#xff0c;我是湘王&#xff0c;这是我的CSDN博客&#xff0c;欢迎您来&#xff0c;欢迎您再来&#xff5e;之前用Caffeine替代Redis的时候&#xff0c;发现先保存KV&#xff0c;再获取key&#xff0c;过期时间为3秒。但即使过了3秒&#xff0c;还是能获取到保存的数据。…

网络爬虫简介

前言 没什么可以讲的所以就介绍爬虫吧 介绍 网络爬虫&#xff08;英语&#xff1a;web crawler&#xff09;&#xff0c;也叫网路蜘蛛&#xff08;spider&#xff09;&#xff0c;是一种用来自动浏览万维网的网络机器人。其目的一般为编纂网络索引。 网路搜索引擎等站点通过…

Windows 环境下,cmake工程导入OpenCV库

目录 1、下载 OpenCV 库 2、配置环境变量 3、CmakeLists.txt 配置 1、下载 OpenCV 库 OpenCV官方下载地址&#xff1a;download | OpenCV 4.6.0 下载完毕后解压&#xff0c;便可以得到下面的文件 2、配置环境变量 我们需要添加两个环境变量&#xff0c;一个是 OpenCVConfi…

小红书达人选择,投放指南4注意!

为什么达人投放后反响平平&#xff0c;别的品牌为什么曝光这么高&#xff0c;我投放的钱是打水漂了吗&#xff1f;怎么能达到高曝光投放&#xff1f;今天就跟大家来聊聊如何让小红书达人投放达到高曝光&#xff1f;随着消费升级&#xff0c;在这场营销中&#xff0c;平台日渐爆…

数据结构与算法】链表2:节点交换与删除 链表相交 环形链表

文章目录今日任务1.Leetcode24&#xff1a;两两交换链表中的节点&#xff08;1&#xff09;题目&#xff08;2&#xff09;思路&#xff08;3&#xff09;代码实现2.Leetcode19&#xff1a;删除链表的倒数第N个节点&#xff08;1&#xff09;题目&#xff08;2&#xff09;思路…

机试_6_数据结构(二)

本文介绍机试中考查的一些非线性数据结构&#xff0c;包括二叉树、二叉排序树、优先队列和散列表等较为高级的数据结构。 一、二叉树 树的结构有诸多变体&#xff0c;它们在各种应用中发挥着重要作用。 作为树的特例的二叉树(Binary Tree)&#xff0c;虽然看似简单&#xff0…

Ubuntu安装boost库

参考链接&#xff1a;https://blog.csdn.net/zeye5731/article/details/122413193 1、下载 boost库 boost 库各大版本下载&#xff1a;boost download | hisroy versions 下面就以安装 1.78.0的版本为例 2、安装boost库 我们将下载好的boost库上传到Ubuntu&#xff0c;并解…

C++设计模式(16)——责任链模式

亦称&#xff1a; 职责链模式、命令链、CoR、Chain of Command、Chain of Responsibility 意图 责任链模式是一种行为设计模式&#xff0c; 允许你将请求沿着处理者链进行发送。 收到请求后&#xff0c; 每个处理者均可对请求进行处理&#xff0c; 或将其传递给链上的下个处理…

关闭终端后在服务器上运行代码+将终端输出打印到文件中

解决方案 首先打开一个screen # name是你想给你的项目在screen中起的名字 screen -S name 然后&#xff0c;在你的运行命令后加入 | tee xxxx.txt&#xff0c;如 python run_mujoco.py --envWalker2d-v2 --tradeoff0.2 | tee Walker2d-v2.txt 这样就可以实现题目中的目的了…

华测导航GPCHC协议ROS驱动包,CGI610、410接收机,NavSatStatus、GPSFix和普通格式

目录一、消息类型1.1 sensor_msgs/NavSatFix1.2 sensor_msgs/NavSatStatus1.3 gps_common::GPSFix1.4 sensor_msgs::Imu二、部分源码2.1 相关的依赖和库2.2 文件结构2.3 字段分割函数2.4 定义消息话题Ubuntu 20.04 noetic 华测CGI 610——RS232-C——GPCHC 一、消息类型 1.1 …