网络编程:概述&网络通信要素模拟思路|学习笔记

简介: 快速学习网络编程:概述&网络通信要素模拟思路

开发者学堂课程【大数据 ZooKeeper 快速入门 网络编程:概述&网络通信要素模拟思路】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/549/detail/7576


网络编程:概述&网络通信要素模拟思路


目录

一、网络编程概述

二、网络通信三要素

 

一、网络编程概述

首先要想进行网络通信得有一个计算机网络,所谓的计算机网络就是指通过通信的线路,包括有线或无线各种方式,再加上交换机或者路由器就可以把不同位置各个独立的计算机连接成一个局域网,在这个局域网中,因为可以彼此互相联系,那么就可以实现各个计算机之间的程序共享,资源的共享,包括一个信息的传递。这就是所谓的计算机网络。

所指的网络编程或者叫网络编译就是指在已经实现网络互联的不同的计算机上可能运行着不同的程序。那么它们之间要想进行数据的传输、数据的交换、新的传递该怎么去实现呢?对于开放的人来说,就是怎么样使用编程语言,比如说Java该怎么样实现在不同的计算机上,不同的网络当中,实现一个信息的交换,信息的传输。

 

二、网络通信三要素    

模拟一下,比如现在要设置有个网络编程,看一下得具备哪些要素?这里有一个局域网,首先是一台机器,这个机器上面运行了一个程序,这个程序是一个聊天软件,是由自己开发的,这个程序的名字叫做TT,专门用来进行一个聊天的程序。

image.png

1.IP

要想满足一个跨网络的通信,比如现在在局域网中有很多台机器,要想跨网络通信,怎么样在茫茫的机群当中找到所要通信的那台机器?因此要想进行网络通信,第一条是什么?就是找到那台机器,有个概念,叫做 IP,在网络中,每一个计算机都有一个 IP,这个 IP 一般跟网络的网卡驱动相关。比如说它是一个有线网卡或者无线网卡,有多个网卡,等于多个 IP。IP 是计算机在网络中的唯一标识。

既然是唯一标识,那就可以通过 IP 找到通信所在的机器,比如第一台机器,它的IP在局域网中是192.168.1.6。第二台机器是192.168.1.78。在整个局域网中可能还有其他的IP其他的机器。但是,通过这个IP一定能够唯一地找到,这样就满足了网络通信的第一个要素,能够通过 IP 找到这台机器。

2. 端口号

这时局域网也想进行一个全球的或者更高的跨网络的一个通信,要求使用公网IP,这时候只用局域网192.168.1.66这个网站就通信不了的,这是第一个要素。

接下来是第二个,通过IP找到了,那么在这个程序上在这台机器上,它也运行了这个集体开发的程序。与此同时还运行了其他的一些程序,比如这里还有一些其他的聊天软件,WW 也是聊天的软件,上面还有其他各种各样的程序。连接到这台机器上之后,怎么找到所需要的那个程序呢?所需要的是直接连接到这个 TT 软件上完成一个通信,但是现在有两个程序。这时候要给在计算机中运行的每一个程序一个标号,数据标识,TT 的标号是2000,WW 的标号是2001,上面那个是2002。第一个机器因为是同样的软件,那么标号是2000。这个翻译过来专业术语叫做端口号。

端口号是什么?一台机器上不同程序的标识,也就是通过这种端口号的形式,一定能够找到所需要通信的那个程序,不至于连接到其他方面。因此经过这两个要素,现在怎么办?通过IP找到这台机器,然后通过端口号找到这个程序,这样彼此双方程序已经建立连接了。

3.传输协议

但是,有这样一种场景,第一个机器使用的是中文,另一个机器使用的是英文。在没有翻译软件的情况下,双方进行通信这个格式是不规范的,彼此识别不了。所以想要双方能制定一个统一的标准,统一的格式,达成一个传输的协议,双方都按照这个要求来做,发送数据的时候按照这个协议来进行发送,比如首先发送三个空的字符,然后发送个1010,然后下面开始翻译格式。不管用中文还是英文,最终统一编码的时候都按照固定的编码来进行编译。双方都遵守这个格式,双方都可以去理解都可以遵守。因此要想满足于网络性的还需要一个专业数据叫做传输的协议。

传输协议就是通信双方都遵守达成的传输数据的格式,如果这个协议双方都不遵守或者一方不遵守的话,也不会叫做协议。因此可以想象一下,要想满足一个网络通信编程,应该得具备这三个要素,这叫网络编程。

网络通信的三要素,第一个通过IP在茫茫的机器当中找到唯一想要通信的那台机器,然后再通过端口号找到所要通信的那个程序,最后双方按照统一的传输格式来进行通信,这样就可以实现一个跨网络的机器不同程序之间的通信,这就是一个模拟思路图。

相关文章
|
域名解析 存储 网络协议
深入解析网络通信关键要素:IP 协议、DNS 及相关技术
本文详细介绍了IP协议报头结构及其各字段的功能,包括版本、首部长度、服务类型、总长度、标识、片偏移、标志、生存时间(TTL)、协议、首部检验和等内容。此外,还探讨了IP地址的网段划分、特殊IP地址的应用场景,以及路由选择的大致流程。最后,文章简要介绍了DNS协议的作用及其发展历史,解释了域名解析系统的工作原理。
551 5
深入解析网络通信关键要素:IP 协议、DNS 及相关技术
|
Ubuntu 网络安全 图形学
Ubuntu学习笔记(二):ubuntu20.04解决右上角网络图标激活失败或者消失,无法连接有线问题。
在Ubuntu 20.04系统中解决网络图标消失和无法连接有线网络问题的方法,其中第三种方法通过检查并确保Windows防火墙中相关服务开启后成功恢复了网络连接。
4614 0
Ubuntu学习笔记(二):ubuntu20.04解决右上角网络图标激活失败或者消失,无法连接有线问题。
|
9月前
|
网络协议 物联网
VB6网络通信软件上位机开发,TCP网络通信,读写数据并处理,完整源码下载
本文介绍使用VB6开发网络通信上位机客户端程序,涵盖Winsock控件的引入与使用,包括连接服务端、发送数据(如通过`Winsock1.SendData`方法)及接收数据(利用`Winsock1_DataArrival`事件)。代码实现TCP网络通信,可读写并处理16进制数据,适用于自动化和工业控制领域。提供完整源码下载,适合学习VB6网络程序开发。 下载链接:[完整源码](http://xzios.cn:86/WJGL/DownLoadDetial?Id=20)
352 12
|
移动开发 网络协议 NoSQL
不为人知的网络编程(十七):冰山之下,一次网络请求背后的技术秘密
本文将抛弃千篇一律的计网知识理论,从现实的互联网技术实践角度,一步步为你分享一次网络请求背后的技术秘密。
167 0
|
10月前
|
安全 网络安全 UED
为何长效代理静态IP是网络管理的关键要素
在信息化时代,静态长效IP代理对网络管理至关重要。它能提升网络服务质量,确保远程办公、视频会议等应用的稳定性和连续性;减少延迟和网络拥堵,加快数据传输;提高网络安全,便于设置访问权限,防止未授权访问。91HTTP高质量代理IP服务商助力高效信息获取。
217 23
|
9月前
|
虚拟化 网络虚拟化 Windows
导入虚拟机到Hyper-V环境时,理解并配置网络适配器设置是确保网络通信的关键
在Hyper-V环境中,正确配置虚拟机的网络适配器是确保其网络通信的关键。需先启用Hyper-V功能并创建虚拟交换机。接着,在Hyper-V管理器中选择目标虚拟机,添加或配置网络适配器,选择合适的虚拟交换机(外部、内部或私有),并根据需求配置VLAN、MAC地址等选项。最后,启动虚拟机并验证网络连接,确保其能正常访问外部网络、与主机及其他虚拟机通信。常见问题包括无法访问外部网络或获取IP地址,需检查虚拟交换机和适配器设置。
|
Web App开发 网络协议 安全
网络编程懒人入门(十六):手把手教你使用网络编程抓包神器Wireshark
Wireshark是一款开源和跨平台的抓包工具。它通过调用操作系统底层的API,直接捕获网卡上的数据包,因此捕获的数据包详细、功能强大。但Wireshark本身稍显复杂,本文将以用抓包实例,手把手带你一步步用好Wireshark,并真正理解抓到的数据包的各项含义。
4078 2
|
网络协议 物联网 数据处理
C语言在网络通信程序实现中的应用,介绍了网络通信的基本概念、C语言的特点及其在网络通信中的优势
本文探讨了C语言在网络通信程序实现中的应用,介绍了网络通信的基本概念、C语言的特点及其在网络通信中的优势。文章详细讲解了使用C语言实现网络通信程序的基本步骤,包括TCP和UDP通信程序的实现,并讨论了关键技术、优化方法及未来发展趋势,旨在帮助读者掌握C语言在网络通信中的应用技巧。
356 2
|
人工智能 供应链 安全
网络安全与信息安全:构建数字世界的坚固防线在当今数字化时代,网络安全已成为维护个人隐私、企业机密和国家安全的重要基石。本文旨在探讨网络安全漏洞、加密技术及安全意识等关键领域,通过深入浅出的方式,引导读者理解网络安全的核心要素,并分享实用的防护策略,共同守护我们的数字世界。
随着互联网技术的飞速发展,网络安全威胁日益凸显,成为全球关注的焦点。本文聚焦网络安全的三大核心议题——网络安全漏洞、加密技术与安全意识,旨在揭示它们之间的相互关联与重要性。通过剖析真实案例,展现网络攻击的复杂性与破坏力;解析加密技术的原理与实践,强调其在保护数据安全中的关键作用;同时,倡导提升公众安全意识,构建多层次的网络安全防护体系。本文不仅为专业人士提供技术参考,也旨在提高普罗大众的网络安全认知,共同筑牢数字世界的安全防线。
500 10
|
缓存 监控 网络协议
计算机网络的常用的网络通信命令(Windows)
本文介绍了网络技术中常用的命令,如ping用于检测网络连通性,ipconfig查看TCP/IP配置,netstat监控网络状态,arp显示和修改ARP缓存,at安排任务执行,tracert追踪路由,以及nbtstat获取NetBIOS信息。
288 1

热门文章

最新文章