【网络通信】探索UDP与TCP协议、IP地址和端口号的奥妙

news/2024/5/18 12:36:11 标签: 网络, 网络协议, tcp/ip, 网络通信, udp

🌺个人主页:Dawn黎明开始

🎀系列专栏:网络奇幻之旅
每日一句:往前走,朝着光

📢欢迎大家:关注🔍+点赞👍+评论📝+收藏⭐️


文章目录

📋前言

一.网络通信

1.1网络通信协议

1.2TCP/IP协议中的四个层次

二.UDP协议

2.1定义

2.2UDP连接的交互过程

三.TCP协议

3.1定义

3.2.TCP连接的交互过程

四. IP地址和端口号

4.1. IP地址(Intenet Protocol)

4.1.1定义

4.1.2查看本机的IP地址

4.1.3IP地址的组成

4.1.4IP地址分类及其范围

4.2端口号(port)

4.2.1定义

4.2.2IP地址和端口号的作用

📝全文总结


📋前言

        如今,计算机网络已经成为人们日常生活的必需品,无论是工作时发送邮件,还是在休闲时和朋友网上聊天都离不开计算机网络。本文将重点介绍网络通信的相关知识。

一.网络通信

1.1网络通信协议

       为了提供通信支持,位于同一个网络中的计算机在进行连接通信时必须要遵守一定的规则,这些规则被称为网络通信协议,它对数据的传输格式、传输速率、传输步骤等做了统一规定,通信双方必须同时遵守才能完成数据交互。网络通信协议有很多种,本章所学的网络编程知识,主要就是基于TCP/IP协议中的内容。

1.2TCP/IP协议中的四个层次

        TCP/IP协议中的四个层次从最下层到最上层依次是链路层、网络层、传输层和应用层,每层分别负责不同的通信功能。

链路层:

         链路层也称为数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆或其他传输媒介有关的物理接口细节。

网络层:

         也称网络互联层,是整个TCP/IP协议的核心,它主要用于将传输的数据进行分组,将分组数据发送到目标计算机或者网络网络层对TCP/IP网络中的硬件资源进行标识。

传输层:

          在TCP/IP网络中,不同的机器之间进行通信,数据的传输是由传输层控制的,这包括数据要发往的目的主机及应用程序、数据的质量控制等。TCP/IP网络中最常用的传输协议TCP和UDP就应用于这一层。传输层通常以TCP或UDP来控制端点到端点的通信。用于通信的端点由Socket定义,而Socket由IP地址和端口号组成

应用层:

          主要负责应用程序的协议。大多数基于Internet的应用程序都被看作TCP/IP的应用层协议,如HTTP协议、FTP协议、SMTP协议、Telnet协议等。

二.UDP协议

2.1定义

      UDP是无连接通信协议,即在数据传输时,数据的发送端和接收端不建立逻辑连接。简单来说,当一台计算机向另外一台计算机发送数据时,发送端不会确认接收端是否存在就会发出数据。同样接收端在收到数据时,也不会向发送端反馈是否收到数据。

2.2UDP连接的交互过程

三.TCP协议

3.1定义

        TCP协议是面向连接的通信协议,即在传输数据前先在发送端和接收端建立逻辑连接,然后再传输数据,它提供了两台计算机之间可靠无差错的数据传输。在TCP连接中必须要明确客户端与服务器端,由客户端向服务器端发出连接请求,每次连接的创建都需要经过“三次握手”。因为TCP协议拥有面向连接特性,所以它可以保证传输数据的安全性,是一个被广泛采用的协议。例如文件传输。

3.2.TCP连接的交互过程

四. IP地址和端口号

4.1. IP地址(Intenet Protocol)

4.1.1定义

       互联网上的每一台终端设备都有一个唯一标识网络中的请求可以根据这个标识找到具体的计算机,这个唯一标识就是IP地址。目前,IP地址广泛使用的版本是IPv4,它用4个字节大小的二进制数表示,如00001010000000000000000000000001。因为二进制形式不便于记忆,所以通常会将IP地址写成十进制形式,每个字节用一个十进制数字(0~255)表示,数字间用点符号(.)分开,如127.0.0.1。

4.1.2查看本机的IP地址

      在Windows操作系统中,用户可以在命令行通过ipconfig命令查看本机的IP地址。

4.1.3IP地址的组成

      IP地址={<网络地址>,<主机地址>},其中网络部分表示IP地址属于互联网的哪一个网络,是网络的地址编码,主机部分表示其属于该网络中的哪一台主机,是网络中一个主机的地址编码,二者是主从关系。

4.1.4IP地址分类及其范围

         IP地址根据网络地址和主机地址的范围,分为5类,各地址可使用的IP数量不同,IP地址分类及其范围如表所示。

   注意:

         在表中可以发现没有127.X.X.X的地址,因为其是保留地址,用作循环测试,在开发中经常使用127.0.0.1表示本机的IP地址。

4.2端口号(port)

4.2.1定义

      在计算机中,端口号就是一个服务所占用的端口的唯一标识。如果把计算机看做一座大楼,IP地址相当于大楼的地址,端口号是不同房间的门牌号。IP地址需要和端口号结合起来使用,网络中的请求需要通过IP地址找到主机,一台主机上可能同时运行很多个服务,不同的服务会占用不同的端口,主机根据端口号把不同的请求分配给不同的服务。端口号是用16位的二进制数来表示的,将其转换为十进制数的取值范围是0~65535,其中,0~1023之间的端口号由操作系统的网络服务占用。

4.2.2IP地址和端口号的作用

📝全文总结

         本文主要介绍了网络通信的相关知识,包括网络基础UDP协议、TCP协议IP地址和端口号等内容。网络通信协议规定了数据传输的格式和步骤,TCP/IP协议包括链路层、网络层、传输层和应用层。UDP是无连接通信协议,而TCP是面向连接的通信协议,它们分别有不同的特点和适用场景。IP地址是计算机在网络中的唯一标识,而端口号则标识了不同服务所占用的端口,通过结合IP地址和端口号来实现网络通信和数据交换。

🌺如果大家有不明白的地方,或者文章部分内容有问题,欢迎大家在评论区讨论,指正🌺


http://www.niftyadmin.cn/n/5193211.html

相关文章

企业spark案例 —— 出租车轨迹分析(Python)

第1关&#xff1a;SparkSql 数据清洗 # -*- coding: UTF-8 -*- from pyspark.sql import SparkSession if __name__ __main__:spark SparkSession.builder.appName("demo").master("local").getOrCreate()#**********begin**********#df spark.read.opt…

网络运维与网络安全 学习笔记2023.11.18

网络运维与网络安全 学习笔记 第十九天 今日目标 冲突域和交换机工作原理、广播域和VLAN原理 VLAN配置、TRUNK原理与配置、HYBRID原理与配置 冲突域和交换机工作原理 冲突域概述 定义 网络设备发送的数据&#xff0c;产生冲突的区域&#xff08;范围&#xff09; 对象 “数…

<MySQL> 什么是JDBC?如何使用JDBC进行编程?

目录 一、JDBC是什么&#xff1f; 二、JDBC常用接口和类 2.1 DataSource 2.2 Connection 2.3 Statement 2.4 ResultSet 三、JDBC的使用 3.1 获得数据库驱动包 3.2 添加到项目依赖 3.3 描述数据库服务器 3.4 建立数据库连接 3.6 执行SQL语句和接收返回数据 3.7 释放…

xlua源码分析(三)C#访问lua的映射

xlua源码分析&#xff08;三&#xff09;C#访问lua的映射 上一节我们主要分析了lua call C#的无wrap实现。同时我们在第一节里提到过&#xff0c;C#使用LuaTable类持有lua层的table&#xff0c;以及使用Action委托持有lua层的function。而在xlua的官方文档中&#xff0c;推荐使…

快速入门:构建您的第一个 .NET Aspire 应用程序

##前言 云原生应用程序通常需要连接到各种服务&#xff0c;例如数据库、存储和缓存解决方案、消息传递提供商或其他 Web 服务。.NET Aspire 旨在简化这些类型服务之间的连接和配置。在本快速入门中&#xff0c;您将了解如何创建 .NET Aspire Starter 应用程序模板解决方案。 …

Web之HTML笔记

Web之HTML、CSS、JS Web标准一、HTML&#xff08;超文本标记语言&#xff09;HTML 基本结构标签常用标签1.font标签2.p标签3.注释4.h系列标题5.img6.超链接a7.列表8.表格9.表单 Web之CSS笔记 Web标准 结构标准用于对网页元素进行整理和分类(HTML)表现标准用于设置网页元素的版…

Js键盘事件实现元素上下左右动态移动(内含源码)

本文主要讲解如何利用JavaScript控制键盘的上下左右键同时利用监听键盘事件来实现对一个元素的控制。键盘控制&#xff0c;本质上是监听到用户对键盘使用&#xff0c;并在监听后实现一些方法使得元素可以跟随键盘进行移动。 如何监听键盘事件 Js监听键盘有以下几种方法&#…

【vue实战项目】通用管理系统:首页

前言 本文为博主的vue实战小项目系列中的第三篇&#xff0c;很适合后端或者才入门的小伙伴看&#xff0c;一个前端项目从0到1的保姆级教学。前面的内容&#xff1a; 【vue实战项目】通用管理系统&#xff1a;登录页-CSDN博客 【vue实战项目】通用管理系统&#xff1a;封装to…