首页 > 编程语言 >网络编程介绍(二)(端口、通信协议)

网络编程介绍(二)(端口、通信协议)

时间:2024-06-04 09:03:56浏览次数:15  
标签:断开连接 通信协议 编程 端口 网络 TCP IP 连接

端口

标记正在计算机设备上运行的应用程序的,被规定为一个 16 位的二进制,范围是 0~65535 。

分类

周知端口: 0~1023 ,被预先定义的知名应用占用(如: HTTP 占用 80 , FTP 占用 21 ) 注册端口 : 1024~49151 ,分配给用户进程或某些应用程序。 动态端口: 49152 到 65535 ,之所以称为动态端口,是因为它 一般不固定分配某种进程,而是动态分配。

通信协议

网络上通信的设备,事先规定的连接规则,以及传输数据的规则被称为网络通信协议。

开放式网络互联标准:OSI网络参考模型

OSI 网络参考模型:全球网络互联标准。 TCP/IP网络模型:事实上的国际标准。

OSI网络参考模型

TCP/IP网络模型

各层对应

面向操作

应用层

应用层

HTTP、FTP、SMTP…

应用程序需要关注的:浏览器,邮箱。程序员一般在这一层开发

表示层

会话层

传输层

传输层

UDPTCP…

选择使用的TCP , UDP协议

网络层

网络层

IP…

封装源和目标IP

数据链路层

数据链路层+ 物理

比特流…

物理设备中传输

物理层

传输层的2个通信协议

UDP(User Datagram Protocol) :用户数据报协议; TCP(Transmission Control Protocol) :传输控制协议。

UDP协议

特点:无连接、不可靠通信。(通讯效率高) 不事先建立连接,数据按照包发,一包数据包含:自己的 IP 、程序端口,目的地 IP 、程序端口和数据(限制在 64KB 内)等。 发送方不管对方是否在线,数据在中间丢失也不管,如果接收方收到数据也不返回确认,故是不可靠的 。

TCP协议

特点:面向连接、可靠通信。(通讯效率相对不高) TCP 的最终目的:要保证在不可靠的信道上实现可靠的传输。 TCP 主要有三个步骤实现可靠传输:(三次)建立连接,传输数据进行确认,(四次)断开连接。
(三次)建立连接

        发出连接请求

        返回一个响应

        再次发出确认信息,连接建立

(四次)断开连接

        发出断开连接请求

        返回一个响应:稍等

        返回一个响应:确认断开

        发出正式确认断开连接

标签:断开连接,通信协议,编程,端口,网络,TCP,IP,连接
From: https://blog.csdn.net/2301_81718046/article/details/139407492

相关文章

  • 《信息学奥赛一本通 编程启蒙C++版》3126-3130(5题)
    3126:练21.3 神奇装置信息学奥赛一本通-编程启蒙(C++版)在线评测系统练21.3神奇装置信息学奥赛一本通-编程启蒙(C++版)在线评测系统3126:练21.3神奇装置_哔哩哔哩_bilibili#include<bits/stdc++.h>usingnamespacestd;intmain(){ inta,b,c,d; cin>>a>>b>>c......
  • 《信息学奥赛一本通 编程启蒙C++版》3001-3280
    《信息学奥赛一本通编程启蒙C++版》3001-3005(5题)《信息学奥赛一本通编程启蒙C++版》3001-3005(5题)-CSDN博客《信息学奥赛一本通编程启蒙C++版》3006-3010(5题)《信息学奥赛一本通编程启蒙C++版》3006-3010(5题)-CSDN博客《信息学奥赛一本通编程启蒙C++版》3011-3015......
  • 【轻松搞定形象照】助你打造编程等级考试、竞赛专属二寸靓照,报名无忧,展现最佳风采!
    更多资源请关注纽扣编程微信公众号​在数字化时代,拍照似乎变得轻而易举,但当我们需要一张特定规格的一寸照片时,事情就变得复杂起来。随着编程等级考试和各类信息学竞赛的日益临近,不少考生都为了一张符合要求的一寸照片而忙碌。​这些照片的要求极为严格:必须达到300dpi的......
  • spark安装和编程实践(Spark2.1.0)
    环境准备1.VMware虚拟机(Linux操作系统)2.Windows7~113.JDK4.HadoopHadoop安装及集群环境配置-CSDN博客https://blog.csdn.net/2301_81921110/article/details/139362063?spm=1001.2014.3001.55015.Xshell7(用于连接虚拟机与Windows)6.Xftp7(用于虚拟机与Windows之间传输文......
  • 编程奇境:C++之旅,从新手村到ACM/OI算法竞赛大门(武器:排序算法)
    引言现在你已经拥有了c++的基础语法知识,人物已经有了基本属性,那么想要打怪,手里必须要有趁手的武器,各种算法就是手中的武器,要根据怪物的不同特性来选择不同的武器。本章节讲的就是新手第一把武器:排序算法。所谓排序算法就是把一些乱序的序列按照从小到大或从大到小进行排序,是......
  • 2021新书Python程序设计 人工智能案例实践 Python编程人工智能基本描述统计集中趋势和
    书:pan.baidu.com/s/1owku2NBxL7GdW59zEi20AA?pwd=suov​提取码:suov我的阅读笔记:图像识别:使用深度学习框架(如TensorFlow、PyTorch)创建图像分类模型。探索迁移学习,使用预训练模型进行定制。自然语言处理(NLP):构建一个情感分析模型,用于分析文本中的情感。实现一个文本生成模型,......
  • socket网络编程——套接字地址结构
    一、通用socket地址结构  socket网络编程接口中表示socket地址的是结构体sockaddr,其定义如下:1.#include<bits/socket.h>2.3.structsockaddr4.{5.sa_family_tsa_family;6.charsa_data[14];7.}; sa_family成员是地址族类型(sa_family_t)的变量。......
  • UniTask入门指南:简化Unity中的异步编程
    UniTask入门指南:简化Unity中的异步编程介绍:UniTask是一个轻量级、高性能的异步编程库,专门针对Unity开发进行了优化。与Unity标准的Task系统相比,UniTask提供了更加简洁和高效的异步编程方式。在Unity项目中使用UniTask可以大大提高开发效率,简化异步操作的编码过程。UniTask......
  • opencv c++编程基础
    1、图片的本质图像在OpenCV中的本质在OpenCV中,图像被表示为一个多维数组,其中每个元素对应于图像中的单个像素。图像的维度取决于其通道数和像素数。**通道数:**图像可以有多个通道,每个通道存储图像的不同信息。例如,彩色图像通常有3个通道(红色、绿色和蓝色),而灰度图像只......
  • C++ primer plus习题及解析第七章(函数C++编程模块)
    题目:7.1编写一个程序,不断要求用户输入两个数,直到其中的一个为0。对于每两个数,程序将使用一个函数来计算它们的调和平均数,并将结果返回给main(),而后者将报告结果。调和平均数指的是倒数平均值的倒数,计算公式如下:调和平均数=2.0*x*y/(x+y)代码: intharmonic_averag......