网络通信的三要素

article/2025/9/19 14:15:21

一、要素一:IP地址    设备在网络中的地址,是唯一的标识。

IP地址:

IP(Internet Protocol):全称”互联网协议地址”,是分配给上网设备的唯一标志。

常见的IP分类为:IPv4和IPv6

IPv4:

IPv6:

IPv6:128位(16个字节),号称可以为地球每一粒沙子编号。

IPv6分成8个整数,每个整数用四个十六进制位表示, 数之间用冒号(:)分开。

 IP地址形式: 公网地址、和私有地址(局域网使用)。

192.168. 开头的就是常见的局域网地址,范围即为192.168.0.0--192.168.255.255,专门为组织机构内部使用。

IP常用命令:

ipconfig:查看本机IP地址

ping IP地址:检查网络是否连通

特殊IP地址:

本机IP: 127.0.0.1或者localhost:称为回送地址也可称本地回环地址,只会寻找当前所在本机。

IP地址操作类-InetAddress:表示Internet协议(IP)地址。

InetAddress  常用API如下:

名称

说明

public static InetAddress getLocalHost()

返回本主机的地址对象

public static InetAddress getByName​(String host)

得到指定主机的IP地址对象,参数是域名或者IP地址

public String getHostName​()

获取此IP地址的主机名

public String getHostAddress​()

返回IP地址字符串

public boolean isReachable(int timeout)

在指定毫秒内连通该IP地址对应的主机,连通返回true

常用API的一些代码展示: 

public static void main(String[] args) throws Exception {//1、获取本地地址对象InetAddress ip1 = InetAddress.getLocalHost();System.out.println(ip1.getHostName());System.out.println(ip1.getHostAddress());//2、获取域名ip对象InetAddress ip2 = InetAddress.getByName("www.baidu.com");System.out.println(ip2.getHostName());System.out.println(ip2.getHostAddress());//3、获取公网IP对象(百度)InetAddress ip3 = InetAddress.getByName("110.242.68.3");System.out.println(ip3.getHostName());System.out.println(ip3.getHostAddress());//4、判断是否能通:ping 5s之前测试是否可通System.out.println(ip3.isReachable(5000));}

二、要素二:端口     应用程序在设备中唯一的标识。

端口号:

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

端口类型

周知端口:0~1023,被预先定义的知名应用占用(如:HTTP占用 80,FTP占用21)

注册端口:1024~49151,分配给用户进程或某些应用程序。(如:Tomcat占 用8080,MySQL占用3306)

动态端口:49152到65535,之所以称为动态端口,是因为它 一般不固定分配某种进程,而是动态分配。

注意:我们自己开发的程序选择注册端口,且一个设备中不能出现两个程序的端口号一样,否则出错。

三、要素三:协议     数据在网络中传输的规则,常见的协议有UDP协议和TCP协议。

通信协议:计算机网络中,连接和通信数据的规则被称为网络通信协议。

网络通信协议有两套参考模型

OSI参考模型:世界互联协议标准,全球通信规范,由于此模型过于理想化,未能在因特网上进行广泛推广。

TCP/IP参考模型(或TCP/IP协议):事实上的国际标准。

OSI参考模型

TCP/IP参考模型

各层对应

面向操作

应用层

应用层

HTTP、FTP、DNS、SMTP…

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

表示层

会话层

传输层

传输层

TCP、UDP…

选择使用的TCP , UDP协议

网络层

网络层

IP、ICMP…

封装源和目标IP,进行路径选择

数据链路层

数据链路层+物理

物理寻址、比特流…

物理设备中传输

物理层

传输层的2个常见协议: 

TCP(Transmission Control Protocol) :传输控制协议

UDP(User Datagram Protocol):用户数据报协议

TCP协议特点:

1、使用TCP协议,必须双方先建立连接,它是一种面向连接的可靠通信协议。

2、传输前,采用“三次握手”方式建立连接,所以是可靠的 。

 

3、在连接中可进行大数据量的传输 。  

4、连接、发送数据都需要确认,且传输完毕后,还需释放已建立的连接,通信效率较低。

TCP协议通信场景:

对信息安全要求较高的场景,例如:文件下载、金融等数据通信。

UDP协议特点:

1、UDP是一种无连接、不可靠传输的协议。

2、将数据源IP、目的地IP和端口封装成数据包,不需要建立连接

3、每个数据包的大小限制在64KB内

4、发送不管对方是否准备好,接收方收到也不确认,故是不可靠的  

5、可以广播发送 ,发送数据结束时无需释放资源,开销小,速度快。

UDP协议通信场景:

语音通话,视频会话等。


http://chatgpt.dhexx.cn/article/n0TPJwFo.shtml

相关文章

计算机中的网络协议包括哪些,网络协议三要素有什么关系

网络协议三要素有什么关系?为进行计算机网络中的数据交换而建立的规则、标准或约定的集合,协议总是指某一层的协议。准确地说,它是对同等层实体之间的通信制定的有关通信规则或约定的结合。佰佰安全网看看吧。 一个网络协议至少包括三要素: 语法&#x…

网络协议概述(一)

目录 一、协议三要素 二、常用的网络协议 2.1 由url确定目标ip地址(DNS协议) 2.2 打包需要发送的信息(http/https协议) 2.3 有应用层到传输层(TCP协议保证应用层包一定送达) 2.4 有传输层到达网络层&…

推荐:大视频免费压缩成指定大小的小视频的解决方法

给大家推荐一款好用的视频压缩软件MOO0视频压缩器,免费压缩,可选压缩画质,小巧便捷,这款软件不像某捷、某云这些软件,不花钱的话你是没办法压缩大文件的 云盘下载: 链接: https://pan.baidu.com/s/1ZUOi7…

如何下载网页中的小视频

想要下载页面中的视频,但是页面中却没有下载选项?教你一招 具体步骤: 一、打开开发者工具。 二、打开网络窗口。 三、刷新页面。 四、右键链接在新标签页中打开。 五、在右下角找到下载选项。 一、开发者工具是用于审查网页元素和查看网页源代…

视频观看小站

[在此处输入文章标题] 这种网站,永远不嫌多~ 视频小站,一次性满足所有观影需求! 低端影视:https://ddrk.me/ 优点:1080P全高清均可观看,无广告,支持站内搜索,观影体验不错。 http:/…

如何压缩视频?教你几个简单的视频压缩方法

怎么将视频给压缩一下呢?通过压缩视频,可以减小视频的大小,从而减少需要存储的视频体积,节省存储空间。虽然视频压缩可能会降低视频的清晰度,但是如果压缩比例得当,仍然可以保持较好的视频观看质量&#xf…

爬取福利吧论坛所有的福利汇总文(视频标题链接、图片)

目录 items.py flhz.py pipelines.py 目标:爬取 福利吧论坛 里的 福利汇总 文,将所有 福利汇总 文里的热门视频标题、链接以json格式保存,所有 福利汇总 文里面的图片按目录(目录名为当前图片所在页url中的7位数字&#xff0…

iPhone上5款视频压缩工具推荐,学会轻松压缩视频

随着技术的不断进步,现在移动端设备已经能够轻松地拍摄高清视频,然而这也带来了存储压力的增大。苹果手机更新换代频繁,但内存空间却没有跟着变大,因此如何压缩视频成为了一个重要的问题。 苹果手机怎么压缩视频?有什…

社区短视频影视appH5小视频

该源码为网站源码,自适应站 可适应多端,例如pc phone等。不含app, 可自行封装成app 主要功能: 1. 视频、图片、音乐、文章一网打尽。多广告系统,精美设计,适应所有终端设备。 2. 广告系统可针对每个模块…

宅男福利!20行Python代码,一网打尽B站小姐姐的直播信号源!

大家好,我是菜鸟哥! 今天我们又用Python来玩一个好玩的程序。随着收看直播的用户激增,越来越多的小姐姐们都在通过直播的方式和粉丝们交流互动。但是直播的界面中总是充斥着各种各样的广告推荐和弹幕信息,让我不能专注于欣赏小姐姐…

推荐几个小视频

公众号推文规则变了,点击上方 "数据社", 设为星标 后台回复【加群】,申请加入数据学习交流群 大家好,我是一哥,今天是假期的第一天,国内疫情有所缓和,大家应该都忙着到处逛吃吧。有小伙伴私聊我&…

视频怎么压缩大小?教你几个压缩视频小技巧

视频怎么压缩一下呢?在现代数字生活中,视频已经成为了一种非常普遍的媒体形式。然而,随着高清、超高清视频的普及,视频文件的大小也越来越大,给存储和传输带来了很大的负担。如果电脑或移动设备的存储空间有限&#xf…

粉丝福利来袭

** 🔥粉丝福利来袭❤️ CSDN资源免费下载!❤️ ** 本文三连加评论下载地址!粉丝可以免费下载!真实有效,顶上去!!! -----------------------------------------------------------…

【福利】Python抖音小视频无水印下载工具助手exe

本渣渣的一个老哥要的抖音小视频无水印下载,我觉得他是一个LSP,因为抖音上的小姐姐实在是太多,太好看了! 可是他就是不发好看的小姐姐抖音号给我... 难道我的肾没有他强?! 不可能啊,本渣渣经常吃…

搭建nginx rtmp流媒体服务器(超详细)

阿里云搭建rtmp流媒体服务器,中间踩过一些坑,过程一步步纪录的很详细,以及碰到的一些问题。 一.工具下载 下载Nginx wget http://nginx.org/download/nginx-1.12.1.tar.gz 下载 OpenSl https://github.com/openssl/openssl/archive/Open…

Windows上搭建rtsp-simple-server流媒体服务器实现rtsp、rtmp等推流以及转流、前端html与Vue中播放hls(m3u8)视频流

场景 Nginx-http-flv-module流媒体服务器搭建模拟推流flv.js在前端html和Vue中播放HTTP-FLV视频流: Nginx-http-flv-module流媒体服务器搭建模拟推流flv.js在前端html和Vue中播放HTTP-FLV视频流_霸道流氓气质的博客-CSDN博客 上面讲了Nginx-http-flv-moduleflv.j…

直播平台流媒体服务器搭建(Linux+Nginx+RTMP)

写在前面: 实践出真知学习编程最好的语言不是PHP,是English 近年来各大视频直播平台兴起,直播技术也愈发成熟,作为一个程序员,秉着“折腾”精神自己搭建了一个直播用的流媒体服务器,现在来和大家分享一下搭…

个人流媒体服务搭建

简介 主要是个人的流媒体服务器的创建的方式分享 Centos7自建基于HLS的私人直播服务器 相关资源下载 链接:https://pan.baidu.com/s/1zhWFpFRy2v0_lyjA0-AfAg 提取码:yyds 入门操作 实现方法基于nginx和nginx的一个rtmp模块。因为epel源和nginx官…

搭建RTSP流媒体服务器的三种方式

主要用于测试目的,系统是windows,使用的是docker desktop 3.5.1 1. rtsp-simple-server 官网:https://github.com/aler9/rtsp-simple-server (1)下载解压缩 Centos7下载压缩包,然后启动rtsp服务器 tar zx…