网络编程1.0-----网络与通信介绍

 目录

前言:

一、 网络(network)

二、计算网络的种类

三、互联网协议

四、通信协议

TCP/IP协议

 HTTP/HTTPS协议

五、ip地址

查看ip地址

IP地址的分类 

六、域名

七、端口

八,TCP协议

 三次握手

四次挥手

tcp协议的应用 

九、UDP协议

UDP简要说明

TCP与UDP对比: 


前言:

        在当今快速发展的时代,互联网成为了我们生活当中不可或缺的一部分,我们每个人每天都在上网,我们可以通过网络来获取到我们所需要的信息,这充分体现了网络的时效性和快捷性,那你们有没有想过网络是怎么样去工作的呢?本期就主要介绍网络与通信的相关知识和原理,下面就一起来看看吧!

一、 网络(network)

计算机网络就是分布在不同的地区的计算机与专门的外部设备通信线路互联在一起,

成为一个功能强,规模大的网络系统。互通信息,共享硬件,软件,数据等,---因特网

网络就是一个让双方或者多方连接在一起的工具

比如:单机游戏,网络游戏,有什么区别?网络游戏(和其他地区的玩家一起玩),单机游戏(只能在本地设备玩)

计算机网络给我们提供了,资源共享,信息传输,以及综合处理,集中处理服务。

二、计算网络的种类

计算机网络,按照不同的分类原则,分为不同类型的计算机网络

通常情况下计算机网络按照规模的大小以及延伸范围进行分类,常见的分类:局域网,城域网,

广域网

局域网:称为内网,私网
地理覆盖范围小, 只有一个相对的范围进行连接
局域网是可以支持多种传输
延迟低,可靠性高

城域网;覆盖城市的范围,提供了信息服务业务的高速计算机网络

广域网:又称为外网,公网
地理覆盖范围比较大,广域网不等于互联网

因特网(Internet)被视为世界上最大的广域网  

三、互联网协议

协议:比如三方协议,游戏的服务协议,双方(多方)讨论约定好的事情,这个也相当于一种协议(类似于劳动合同)

协议的前提必须要有两方的进行

网络协议就是在网络中对信息管理,传递的一些规范,在相互通信之间共同遵循的规则。

国际标准组织(ISO)提出开放系统互联参考的模型,就是OSI参考模型()将网络简化,模块的方式来设计网络。

OSI参考模型把计算机网络分为了7层,是计算机网络结构的参考标准

OSI(从下到上的):物理层,数据链路层,网络层,传输层,会话层,表示层,应用层

OSI说明:

应用层:为程序提供服务的接口
表示层:将上一层数据进行转换
会话层:负责建立,管理终止会话
传输层:负责将上面的数据进行分段处理
网络层:负责对子网间的数据进行路由选择
数据链路层;将数据进行打包,或者进行数据解包传递到网络层
物理层:将打包好的数据传递给硬件设备进行传输,将解析的数据传递给数据链路层

四、通信协议

TCP/IP协议

        通信协议就是网络通信的基础,ip协议是一个非常重要的通信协议,ip又被称为网际协议,是支持互联网间的数据报协议,ip协议提供了连接完善的功能

        TCP协议传输控制协议,规定了一种可靠的数据信息传递服务。与IP协议的功能不尽相同木叶可以分开单独使用,在功能上是互补的,在实际中将两个协议统称为TCP/IP协议。TCP/IP协议也是互联网中最常用的基础协议(TCP/IP协议族)

TCP/IP协议将计算机网络分为四层:网络接口层、网络层、传输层、应用层

协议说明:

应用层:http,https,Dns,Ftp
传输层:tcp,udp
网络层:ip,ICMP,idmp
网络接口层:wan lan

 HTTP/HTTPS协议

HTTP协议:超文本传输协议,常用于与web浏览器和服务器之间的传递信息

HTTPS协议:超文本传输安全协议,通过使用SSl/TSL加密技术以及HTTP协议结合进行网络数据安全传输

http和https的区别
1. http协议是tcp协议,端口是80, https是tcp协议端口443
2. http协议明文传输,https协议时进行加密
3. http页面响应比https要快

五、ip地址

查看ip地址

        进入cmd指令,如果是Windows系统:输入ipconfig;Linux或者mac系统输入ifconfig

然后就可以显示出设备的ip地址了

        IP地址是IP协议提供的一种统一的地址格式,为互联网上每一个主机和一个网络分配的逻辑地址,每个IP地址包括两个识别码(ID)即使网络id以及主机id。

IP地址的分类 

A类

00000000.00000000.00000000.00000000
由一个字节的网络地址跟3个字节的主机地址组成,网络地址的最高位必须是0
网络地址有126个,主机的数量:256**3 -2
地址围:1.0.0.0 - 126.255.255.254

B类

10000000.00000000.00000000.00000000
由2个字节的网络地址跟2个字节的主机地址组成,网络地址的最高位必须是10
网络地址有16382个,主机的数量:256**2 - 2
地址围:128.0.0.0 - 191.255.255.254

C类

11000000.00000000.00000000.00000000
由3个字节的网络地址跟1个字节的主机地址组成,网络地址的最高位必须是110
网络地址有256**2*32-2,主机的数量:254
地址围:192.0.0.0 - 223.255.255.254

D类:该地址用于多点广播地址(多播)

D类:IP地址第一个字节一‘1110’开始,范围:224.0.0.0-239.255.255.254

E类:用于测试开发用的,范围:240.0.0.0-255.255.255.254

255.255.255.255属于广播地址

私有IP:在网络IP中,有一部分ip地址是用于我们局域网使用,也就属于私网,不在公网上使用

私网范围:
10.0.0.0 ~ 10.255.255.255
172.16.0.0 ~ 172.31.255.255
192.168.0.0 ~  192.168.255.255

注意:

IP地址是127.0.0.1 ~ 127.255.255.255用于回路测试

127.0.0.1可以代表本机IP地,也可以用localhost 表示

六、域名

在访问一台服务器的时候,需要基础服务器的IP地址,推出域名技术;域名用于在数据传输的时候表示计算机的位置。

DNS

域名跟IP都是表示计算机的位置,IP是网络上唯一标识,DNS将域名以及ip之间对应的关系进行存储,当我们发送请求,DNS就会发送请求找到与域名对应的IP地址并返回。

七、端口

概念:

端口是传输数据的通道,相当于门

端口号就是每一个端口的编号,相当于门牌号

端口号分类:知名端口,动态端口

知名端口一般固定分给一些服务:范围:0-1023

动态端口操作系统随机分配,程序结束之后,端口号就会释放回收,范围:1024-65535

八,TCP协议

  • TCP首部包括20字节的固定首部部分及长度可变的其他选项,所以TCP首部长度可变。20个字节又分为5部分,每部分4个字节32位,如图中的5行,每行表示32位。

  • 传输层,TCP报文段包括:TCP首部和TCP数据部分;

  • 网络层,TCP报文段成为IP数据部分,加上IP首部组成IP数据报;

  • 数据链路层,还要在IP数据报前面加上数据链路层的首部。  

 三次握手

三次过程

  1. 确认双方的接受,发送能力是否正常,是否可以发送数据

  2. 同步双方初始化序列号,为后面的可靠传输做准备

  3. 协商窗口大小,同时接收预留数据缓存区,为后面的可靠传输做准备

作用:保证了数据传输的准确性和完整性,能够实现数据的精准传输,如果出现丢包的情况时,会进行重新发送数据, 

四次挥手

过程

第一次挥手,客户端给服务端发送fin包,表示要断开连接

第二次挥手,服务端给客户端发送ack包,然后服务端进入等待关闭连接状态

第三次挥手,服务端给客户端发送fin包,表示再次确认是否要断开连接

第四次挥手,客户端给服务端发送ack包,表示确认断开连接,之后服务器就断开连接

 四次挥手的作用:确保数据能够完成传输,而不是发送FIN报文后对方立即关闭连接

tcp协议的应用 

tcp协议对网络的要求比较高,因为要精准发送和接收数据,所以要保证网络的传输效率,所以一般来说tcp协议用于网页、邮件发送、信息发送等方面

九、UDP协议

UDP简要说明

        UDP协议跟TCP协议不同的是UDP协议是不需要通过三次握手,四次挥手这个过程,UDP协议是基于非连接的,也就是把数据包简单封装一下然后通过网卡直接发送过去就是了。这个过程是没有状态的,但是相较于TCP,UDP效率非常高,速度非常快,但是比较容易出现丢包等情况,也就是说数据可能不能完整传输过去,所以稳定性弱。

TCP与UDP对比: 

 好了以上就是今天的全部内容了,看完了之后,你们对网络与通信是否有了新的了解呢?

分享一张壁纸:

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
### 回答1: onvif-java-1.0-snapshot.jar是一个使用Java编写的开放网络视频接口(ONVIF)库文件。ONVIF是一个全球开放的标准化协议,旨在实现不同厂商的IP视频设备之间的互操作性。 该jar文件是为开发人员提供的一个软件包,用于在Java应用程序中实现与ONVIF兼容设备的通信和交互。它包含了一系列的类和方法,以简化与ONVIF设备的连接、配置和控制。 使用onvif-java-1.0-snapshot.jar,开发人员可以轻松地实现对视频流的实时监控、设备配置、事件管理等功能。它提供了与ONVIF设备进行网络发现、设备管理、媒体传输、图像设置等操作的API。 此外,该库文件还提供了与ONVIF设备进行通信的示例代码,方便开发人员学习和参考。 总之,onvif-java-1.0-snapshot.jar是一个有助于在Java应用程序中实现与ONVIF设备交互的工具包,它简化了与设备的连接和控制,并提供了一系列的API和示例代码。这使得开发人员能够快速、方便地集成ONVIF兼容设备的功能到自己的应用程序中。 ### 回答2: onvif-java-1.0-snapshot.jar 是一个Java库文件,用于与ONVIF协议兼容的网络摄像机进行通信。ONVIF(开放网络视频接口)是一个全球性的开放性标准,旨在促进不同制造商的网络摄像机和其他物联网设备之间的互操作性。 该库文件提供了一系列的API和工具类,使开发人员可以轻松地与ONVIF兼容的设备进行通信。它包括了与设备进行连接、发送命令、获取设备信息、实时视频流等操作所需的功能。 通过使用onvif-java-1.0-snapshot.jar,开发人员可以轻松地实现以下操作: 1. 连接设备:通过提供设备的IP地址、用户名和密码,可以建立与ONVIF兼容设备的连接。 2. 发送命令:可以发送不同类型的命令,如搜索设备、获取设备信息、设置预置位、控制摄像头的移动等。 3. 获取设备信息:可以获取设备的基础信息,如型号、序列号、厂商等。 4. 实时视频流:可以获取实时视频流,以便实时查看网络摄像机的图像。 该库文件的使用需要有一定的Java编程知识,开发人员需要按照对应的文档和示例代码进行操作。使用该库可以简化与ONVIF兼容设备进行通信的过程,提高开发效率。 ### 回答3: onvif-java-1.0-snapshot.jar是一个Java开发工具包,用于与ONVIF兼容的设备进行交互和控制。ONVIF是一个全球领先的开放标准,旨在提供网络视频监控设备之间的互操作性。 这个jar文件包含了一系列的Java类和方法,让开发人员能够轻松地与ONVIF设备进行通信。它提供了一组API,用于发现设备、获取设备信息、控制设备的摄像头和图像设置以及进行视频流的传输和录制。 使用这个jar文件,开发人员可以编写Java程序来实现各种与ONVIF设备相关的功能。例如,他们可以通过使用jar中提供的方法来搜索局域网中的所有ONVIF设备,并获取每个设备的基本信息,如设备名称、型号、厂商等。他们还可以使用这个工具包来控制设备的摄像头,例如调整焦距、变焦、旋转角度等。另外,该jar文件还支持视频流的传输和录制,使开发人员可以捕捉和保存来自ONVIF摄像头的实时视频。 总之,onvif-java-1.0-snapshot.jar为开发人员提供了一种方便快捷的方式来集成和控制ONVIF兼容设备。无论是开发自己的监控应用程序,还是集成ONVIF设备到一个现有的平台,这个工具包都可以帮助开发人员快速实现他们的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fitz&

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值