5.6.2 传输层编址--端口

5.6.2 传输层编址

传输层为应用进程提供了端到端的逻辑通信,两个主机之间的通信实际上是两个主机中的应用进程之间的相互通信,因此一个主机中可能有多个应用进程同时和另一个主机中多个应用进程进行通信,而网络层我们学习的网际协议能够保证分组送达到目的主机,但是它无法交付给主机当中的某个应用进程,因为在TCP/IP的协议族中IP地址标识的仅仅是一个主机,他并没有标识主机当中的应用进程,因此网络层是通过通信子网为主机之间提供一个逻辑通信,而传输层则是依靠网络层的服务在两个主机的应用进程之间来提供端到端的逻辑信,所以我们在传输层需要增加新的编址内容,这就是我们要学习的传输层的编址。

一、传输层的复用和分用

如图

复用和分用

传输层一个非常重要的功能就是复用和分用,传输层的复用功能指的是应用层的不同程序交付给下一层的报文都通过传输层的协议,再往下使用网络层提供的服务,当这些报文由网络层选录和控制经过主机和通信子网中各节点若干链路的传送到达目的主机之后将有目的主机的传输层再使用分用的功能将报文分别交付给相应的应用进程。

如图

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2BLObZoc-1687687757953)(F:\2022年电子物证学习\基础夯实\网络技术与应用\微信截图_20230625085226.png)]

我们在前面已经学习过协议和服务,我们知道在协议的控制之下两个对等实体之间的通信使得本层能够向它的上一层提供服务,而传输层向应用层提供服务的就是传输层的实体,而传输层的服务用户就是应用层的实体。而传输层中两个对等实体之间遵循的传输协议保证额能够向应用层提供服务,传输层提供的服务还需要使用网络层及其以下各层提供的网络服务。

传输层与应用层之间的服务访问点TSAP就是端口。而传输层与网络层之间的服务访问点NSAP就是IP数据报中首部中的协议号字段。在传输层中的UDP和TCP都使用了端口与上层的应用进程之间进行通信,所以端口就是传输层的服务访问点TSAP也就是说是与应用进程之间的接口

二、常用应用进程默认的端口

如图

常用端口

常用端口

在DNS协议中使用的就是UDP的53的端口

而DHCP动态主机配置协议使用了UDP的67端口

我们常用的文件上传下载的FTP使用的是TCP的两个端口分别对应于控制连接和数据连接,它的默认端口分别是TCP的20端口和21端口

Telnet使用了TCP的23端口

我们收发邮件所使用的SMTP协议使用了TCP的25端口

POP协议使用的是TCP的110端口

我们经常上网用到的HTTP协议则是使用了TCP的80端口

我们可以看出端口的作用,就是**当数据发送时,让应用层的各种应用都能够将数据通过端口向下交付给传输层,接收数据时,传输层通过端口知道应当将报文中的数据通过端口向上交付给应用层相应的应用进程。**从这个意义上看,端口是应用层进程的标识。

三、端口

在传输层和应用层的接口上所设置的端口是一个16比特的地址,并且用端口号进行标识,所以TCP和UDP各有 2 16 2^{16} 216也就是65536个端口,在这种情况下端口只有本地意义,我们首先来学习一下传输层的端口的分类,传输层端口有以下两种类型。

  1. 熟知端口:专门分配给一些最常用的应用进程,其数值一般为0~1023。这些端口是TCP/IP体系确定并公布的。
  2. 一般端口:用来随时分配给请求通信的客户进程。其数值为1024~65535,我们可以看出一般端口号是非常多的。

有人把服务器比作房子,把端口比作通向不同房间的门,入侵者需要去占领房子的话,势必要破门而入,对入侵者而言,了解房子开了几扇门都是一些什么样的门,在门的后面又有什么东西呢?就显得非常重要了。因此通常入侵者需要用扫描器对目标主机的端口进行扫描,从而确定哪一些端口是开放的,从开放的端口中入侵者就知道目标主机提供了哪些网络服务,进而可以猜测可能存在的漏洞,因此端口扫描可以帮助我们更好的了解目标主机,而对管理员来说扫描本机的开放端口是做好全面安全防范的第一个步骤。

四、小结

我们从传输层复用分用技术引申出了端口的概念

  1. 端口是从英文的port直译过来的,我们在传输层所讲的端口是虚拟的端口,指的是计算机内部或者交换机路由器等网络设备的内部与外界通讯交流的出口,它是看不见的。
  2. 端口是应用层进程的标识。
  3. 熟知端口和一般端口的范围

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

动态规划:积木画

积木画 问题描述 小明最近迷上了积木画, 有这么两种类型的积木, 分别为 I I I 型(大小为 2 个单位面积) 和 L L L 型 (大小为 3 个单位面积): 同时, 小明有一块面积大小为 2 N 2 \times N 2N 的画布, 画布由 2 N 2 \times N 2N 个 1 1 1 \times 1 11 区域…

【强化学习】——Q-learning算法为例入门Pytorch强化学习

🤵‍♂️ 个人主页:Lingxw_w的个人主页 ✍🏻作者简介:计算机研究生在读,研究方向复杂网络和数据挖掘,阿里云专家博主,华为云云享专家,CSDN专家博主、人工智能领域优质创作者&#xf…

【30天熟悉Go语言】8 Go流程控制之循环结构for range、goto、break、continue

文章目录 一、前言二、for循环1、语法1)和Java的for循环一样2)和Java的while一样3)和Java的for(;;)一样 2、for语句执行过程 三、for range1、语法1)遍历key、value只遍历value 2)遍历key 四、关键字1、break1&#xf…

【Java】如何优雅的关闭线程池

文章目录 背景一、线程中断 interrupt二、线程池的关闭 shutdown 方法2.1、第一步:advanceRunState(SHUTDOWN) 把线程池置为 SHUTDOWN2.2、第二步:interruptIdleWorkers() 把空闲的工作线程置为中断2.3、 第三步:onShutdown() 一个空实现&…

Java POI (1)—— 数据读写操作快速入门

一、Excel的版本区别(03版和07版) 所谓“03版” 和 “07版”,指的是 Microsoft Excel 版本号。这些版本号代表着不同的Excel 文件格式。2003版 Excel 使用的文件格式为 .xls,而2007版开始使用新的文件格式 .xlsx。 . xlsx 文件格式…

【Spring 】项目创建和使用

哈喽,哈喽,大家好~ 我是你们的老朋友:保护小周ღ 谈起Java 圈子里的框架,最年长最耀眼的莫过于 Spring 框架啦,如今已成为最流行、最广泛使用的Java开发框架之一。不知道大家有没有在使用 Spring 框架的时候思考过这…

VulnHub靶机渗透:SKYTOWER: 1

SKYTOWER: 1 靶机环境介绍nmap扫描端口扫描服务扫描漏洞扫描总结 80端口目录爆破 3128端口获取立足点获取立足点2提权总结 靶机环境介绍 https://www.vulnhub.com/entry/skytower-1,96/ 靶机IP:192.168.56.101 kali IP:192.168.56.102 nmap扫描 端口扫…

使用mpi并行技术实现wordcount算法

【问题描述】 编写程序统计一个英文文本文件中每个单词的出现次数(词频统计),并将统计结果按单词字典序输出到屏幕上。 注:在此单词为仅由字母组成的字符序列。包含大写字母的单词应将大写字母转换为小写字母后统计。 【输入形…

ChatGPT使用的SSE技术是什么?

在现代web应用程序中,实时通信变得越来越重要。HTTP协议的传统请求/响应模式总是需要定期进行轮询以获得最新的数据,这种方式效率低下并且浪费资源。因此,出现了一些新的通信技术,如WebSocket和SSE。但是,GPT为什么选择…

分布式数据库架构

分布式数据库架构 1、MySQL常见架构设计 对于mysql架构,一定会使用到读写分离,在此基础上有五种常见架构设计:一主一从或多从、主主复制、级联复制、主主与级联复制结合。 1.1、主从复制 这种架构设计是使用的最多的。在读写分离的基础上…

JS 介绍 Babel 的使用及 presets plugins 的概念

一、Babel 是什么 Bebal 可以帮助我们将新 JS 语法编译为可执行且兼容旧浏览器版本的一款编译工具。 举个例子,ES6(编译前): const fn () > {};ES5(编译后): var fn function() {}二、B…

设计模式-抽象工厂模式

抽象工厂模式 1、抽象工厂模式简介2、具体实现 1、抽象工厂模式简介 抽象工厂模式(Abstract Factory Pattern)在工厂模式尚添加了一个创建不同工厂的抽象接口(抽象类或接口实现),该接口可叫做超级工厂。在使用过程中,我们首先通过抽象接口创建不同的工厂…

【HTML界面设计(二)】说说模块、登录界面

记录很早之前写的前端界面(具体时间有点久远) 一、说说模板 采用 适配器(Adapter)原理 来设计这款说说模板,首先看一下完整效果 这是demo样图,需要通过业务需求进行修改的部分 这一部分,就是dem…

Redis系列--布隆过滤器(Bloom Filter)

一、前言 在实际开发中,会遇到很多要判断一个元素是否在某个集合中的业务场景,类似于垃圾邮件的识别,恶意ip地址的访问,缓存穿透等情况。类似于缓存穿透这种情况,有许多的解决方法,如:redis存储…

宏景eHR SQL注入漏洞复现(CNVD-2023-08743)

0x01 产品简介 宏景eHR人力资源管理软件是一款人力资源管理与数字化应用相融合,满足动态化、协同化、流程化、战略化需求的软件。 0x02 漏洞概述 宏景eHR 存在SQL注入漏洞,未经过身份认证的远程攻击者可利用此漏洞执行任意SQL指令,从而窃取数…

如何在大规模服务中迁移缓存

当您启动初始服务时,通常会过度设计以考虑大量流量。但是,当您的服务达到爆炸式增长阶段,或者如果您的服务请求和处理大量流量时,您将需要重新考虑您的架构以适应它。糟糕的系统设计导致难以扩展或无法满足处理大量流量的需求&…

docker基础

文章目录 通过Vagrant安装虚拟机修改虚拟机网络配置 docker CE安装(在linux上)docker desktop安装(在MacOS上)Docker架构关于-阿里云镜像加速服务配置centos卸载docker 官网: http://www.docker.com 仓库: https://hub.docker.com Docker安装在虚拟机上,可以通过V…

Go语言的TCP和HTTP网络服务基础

目录 【TCP Socket 编程模型】 Socket读操作 【HTTP网络服务】 HTTP客户端 HTTP服务端 TCP/IP 网络模型实现了两种传输层协议:TCP 和 UDP,其中TCP 是面向连接的流协议,为通信的两端提供稳定可靠的数据传输服务;UDP 提供了一种…

[MySQL]不就是SQL语句

前言 本期主要的学习目标是SQl语句中的DDL和DML实现对数据库的操作和增删改功能,学习完本章节之后需要对SQL语句手到擒来。 1.SQL语句基本介绍 SQL(Structured Query Language)是一种用于管理关系型数据库的编程语言。它允许用户在数据库中存…

双因素身份验证在远程访问中的重要性

在快速发展的数字环境中,远程访问计算机和其他设备已成为企业运营的必要条件。无论是在家庭办公室运营的小型初创公司,还是团队分散在全球各地的跨国公司,远程访问解决方案都能保证工作效率和连接性,能够跨越距离和时间的阻碍。 …