- 网络通信
概念:网络通信是指通过计算机网络进行信息传输的过程,包括数据传输、语音通话、视频会议等。在网络通信中,数据被分成一系列的数据包,并通过网络传输到目的地。在数据传输过程中,需要确保数据的完整性、准确性和安全性。常见的网络通信协议有TCP/IP、HTTP、SMTP等。随着互联网的发展,网络通信已成为人们日常生活中不可或缺的一部分。(两台设备之间通过网络实现数据传输,即将数据通过网络从一台设备传输到另一台设备)
- 网络
概念:网络是指将多台计算机或设备通过通信线路、交换机等网络设备连接起来,形成一个可以互相通信和共享资源的系统。网络使得不同设备可以通过互联网等各种通信技术实现数据传输和信息共享。这样的连接可以是有线的或无线的,可以是局域网、城域网、广域网,也可以是互联网等。网络的功能包括信息传递、资源共享、远程通信、分布式处理、实时协作等。(两台或多台设备通过一定的物理设备连接起来构成了网络)
网络的常见分类:
-
按范围分类:
-
局域网(LAN):通常在相对较小的地理区域内,如家庭、办公室或校园内部使用。
-
城域网(MAN):跨越城市范围的网络,通常由多个局域网连接而成。
-
广域网(WAN):覆盖更广泛地理区域的网络,通常由多个城域网或局域网连接而成,互联网是最大的广域网。
-
按用途分类:
-
互联网:全球范围的公共网络,用于连接世界各地的计算机和网络。
-
局域网:用于组织内部的内部通信和资源共享。
-
数据中心网络:用于连接数据中心内的服务器和存储设备。
-
无线网络:使用无线通信技术,如Wi-Fi、蓝牙、移动网络等。
-
传感器网络:用于监测和收集环境数据的分布式传感器系统。
-
按通信技术分类:
-
有线网络:使用物理电缆(如以太网、光纤)进行数据传输。
-
无线网络:使用无线电波进行数据传输,包括Wi-Fi、蓝牙、移动通信等。
- ip地址
概念:IP地址(Internet Protocol Address)是计算机网络中用于唯一标识和定位设备(通常是计算机或网络设备)的数字地址。IP地址是因特网通信的基础,它允许数据在网络上正确传输到目标设备。(用于唯一标识网络中的每台计算机/主机)
唯一性:每个设备在网络中都应具有唯一的IP地址,以确保数据能够正确路由到目标设备。这使得每台计算机都可以在全球范围内被唯一标识。
版本:目前主要使用的IP地址版本是IPv4(Internet Protocol Version 4)和IPv6(Internet Protocol Version 6)。IPv4使用32位地址,而IPv6使用128位地址,因此IPv6提供了更大的地址空间,以满足不断增长的互联网需求。
ip地址的组成:网络地址+主机地址
IPv4地址:IPv4地址由四个十进制数(例如,192.168.1.1)组成,每个数范围从0到255。IPv4地址空间有限,已经耗尽了大部分可用的地址。这导致了IPv6的发展,以提供更大的地址空间。
IPv6地址:IPv6地址采用128位二进制表示,通常以冒号分隔的八组四位十六进制数表示,例如,2001:0db8:85a3:0000:0000:8a2e:0370:7334。IPv6地址的主要优势是其巨大的地址空间,可以支持未来的网络增长。
子网掩码:子网掩码是用于划分IP地址空间的工具,它确定哪些部分属于网络标识符,哪些部分属于主机标识符。子网掩码通常与IP地址一起使用,以创建子网。
公共IP地址和私有IP地址:IP地址可以分为公共IP地址和私有IP地址。公共IP地址用于直接与互联网通信,而私有IP地址用于内部网络通信,通常在家庭、企业或组织内部使用,不直接暴露在互联网上。
动态和静态IP地址:IP地址可以分为动态IP地址和静态IP地址。动态IP地址由Internet Service Provider(ISP)动态分配给设备,而静态IP地址是手动配置的,通常用于服务器和网络设备,以确保其IP地址不变。
地址分配:IP地址可以通过DHCP(Dynamic Host Configuration Protocol)动态分配给设备,也可以手动配置。DHCP允许网络设备自动获取IP地址、子网掩码、网关等网络配置信息。
ipv4地址的分类及范围:
- 域名
概念:域名(Domain Name)是互联网上用于标识和定位特定资源的人类友好的文本标识符。**域名用于代替IP地址,使用户能够更容易地访问网站、电子邮件服务器、FTP服务器和其他互联网服务。使用域名,用户可以通过输入网站的域名来访问网站,而不必知道其IP地址。**以下是有关域名的一些关键概念:
-
域名结构:
- 域名通常由多个部分组成,以点号(.)分隔。这些部分按照从右到左的顺序排列,每一级都更具体。例如,www.example.com 中,顶级域名是.com,次级域名是example,子域名是www。
-
顶级域名(TLD):
- 顶级域名是域名中的最高级别,通常表示国家、地区或通用分类。例如,.com、.org、.net 是通用顶级域名(gTLDs),而 .uk、.jp、.cn 是国家代码顶级域名(ccTLDs)。
-
次级域名(SLD):
- 次级域名是紧跟在顶级域名后面的部分,用于更具体地标识网站或服务。例如,在example.com中,example是次级域名。
-
子域名:
- 子域名是在次级域名之前添加的额外部分,用于将网站进一步细分或指向不同的服务器或服务。例如,在www.example.com中,www是子域名。
-
完整域名:
- 完整域名是包括所有级别的域名,从顶级域名一直到最具体的子域名。例如,www.example.com 是一个完整域名。
-
域名解析:
- 域名解析是将人类可读的域名转换为计算机理解的IP地址的过程。这是通过域名系统(DNS)来实现的,DNS服务器负责将域名映射到相应的IP地址。
-
注册和管理:
- 域名需要注册并定期续订,通常通过域名注册商或注册服务提供商完成。注册人(域名持有者)负责管理其域名的配置和维护。
-
国际化域名(IDN):
- 国际化域名允许包含非拉丁字符集的域名,使非英语母语的用户能够使用自己的语言书写域名。例如,使用希腊字母或中文字符的域名。
域名是互联网上非常重要的标识符,它们使用户能够轻松访问网站和其他在线资源,而无需记住复杂的IP地址。选择适当的域名对于品牌建设和在线可识别性非常重要。
- 端口
概念:端口号是计算机网络中用于识别特定服务或进程的数字标识符。在网络通信中,数据包经过计算机或服务器时,端口号用于确定数据应该被传递给哪个应用程序或服务。每个端口号都关联着一个特定的网络服务或协议,以便数据可以正确路由和处理。(用于标识计算机上某个特定的网络程序)
以下是一些关于端口号的关键概念:
-
端口范围:端口号通常是一个16位的数字(2个字节),范围从0到65535。端口号被分为三个主要范围:
- 0到1023:这些端口号是被系统或操作系统保留的,用于一些标准服务和协议,如HTTP(端口80)、HTTPS(端口443)、FTP(端口21)等。
- 1024到49151:这些端口号通常用于用户应用程序或服务,但不属于标准端口。
- 49152到65535:这些端口号是动态或私有端口,通常由客户端应用程序动态选择,用于临时通信。
- 常见的端口号:tomcat:8080,mysqp:3306,oracle:1521,sqlserver:1433
-
TCP和UDP端口:端口号可以用于TCP(传输控制协议)和UDP(用户数据报协议)两种主要的传输层协议。TCP提供可靠的、面向连接的通信,而UDP提供不可靠的、面向无连接的通信。每个协议都有自己的端口号范围,尽管某些端口号可能同时用于TCP和UDP。
-
标准端口号:一些常见的网络服务和协议有标准的端口号分配,这些端口号通常在IANA(Internet Assigned Numbers Authority)维护的端口号列表中定义。例如,HTTP通常使用端口80,SMTP(Simple Mail Transfer Protocol)使用端口25,SSH(Secure Shell)使用端口22等。
-
动态分配端口号:某些应用程序或服务在运行时会动态分配一个可用的端口号,这些端口号通常位于私有或临时端口号范围内,以避免与其他应用程序发生冲突。例如,Web浏览器通常会动态分配一个可用的端口来访问Web服务器。
-
防火墙和端口过滤:防火墙和网络安全设备可以配置为允许或拒绝特定端口上的流量,以增强网络安全性。
端口号是网络通信中的重要概念,它们帮助数据正确到达目标应用程序或服务。了解不同端口号的用途和分配是网络管理和安全的关键组成部分。
- 网络通信协议
概念:网络通信协议是一组规则和约定,用于在计算机网络中实现通信和数据交换。这些协议定义了如何在不同设备之间传输、编码、解码、路由和处理数据。通信协议是网络通信的基础,确保了数据的可靠传输和正确处理。以下是有关网络通信协议的一些关键概念:
-
定义通信规则:通信协议定义了通信双方之间的规则和格式,以确保数据的一致性和可靠性。这包括数据包的结构、报文格式、错误检测和纠正机制等。
-
协议层次结构:网络通信协议通常分为多个层次,每个层次负责不同的任务。这种分层结构有助于模块化设计和实现网络通信。常见的网络协议层次结构包括OSI模型(开放系统互连参考模型)和TCP/IP模型。
- OSI模型包括七个层次:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
- TCP/IP模型包括四个层次:网络接口层、网络层、传输层和应用层。
-
数据封装:在通信协议中,数据通常被分成小块,称为数据包或帧。每个数据包包括数据本身以及一些控制信息,如源地址、目标地址、校验和等。
-
错误处理:通信协议通常包括机制,用于检测和纠正数据传输中可能发生的错误。这些机制有助于确保数据的完整性和可靠性。
-
路由和寻址:通信协议定义了如何寻找目标设备或主机,并将数据传送到正确的位置。这涉及到IP地址、子网掩码、路由表等概念。
-
连接管理:某些协议,如TCP(传输控制协议),提供了连接管理功能,确保数据在发送和接收端之间按顺序传输,以及在需要时进行重新传输。
-
应用层协议:应用层协议定义了应用程序之间的通信规则。常见的应用层协议包括HTTP(用于Web浏览)、SMTP(用于电子邮件)、FTP(用于文件传输)等。
-
标准化和实现:通信协议通常由标准化组织制定,并在不同设备和操作系统上实现。这确保了不同厂商的设备可以互操作,并使互联网成为可能。
通信协议的使用使得不同类型的设备能够有效地协同工作,无论它们位于世界的哪个位置。这种协议的定义和遵循有助于确保数据的可靠传输、安全性和一致性,同时提供了互联网和各种网络应用程序的基础。
TCP/IP传输过程
网络通信协议模型
TCP协议:传输控制协议
- 使用TCP协议前,必须先建立TCP连接,形成传输数据通道
- 传输前,采用"三次握手"方式,是可靠的传输
- TCP协议进行通信的两个应用进程:客户端、服务端
- 在连接中可进行大量数据的传输
- 传输完毕,需要释放已建立的连接,效率低
- 适用场景:TCP适用于需要高可靠性和数据完整性的应用程序,如Web浏览、电子邮件传输、文件下载等。
UDP协议:用户数据协议
- 将数据、源、目的封装成数据包,不需要建立连接
- 每个数据报的大小限制在64K内,不适合传输大量的数据‘
- 因无需连接,故不是可靠的
- 发送数据结束时无需释放连接(因为不是面向连接的),速度快
- 适用场景:UDP适用于一些对延迟更为敏感,且可以容忍一些数据丢失的应用程序,如音频和视频流、在线游戏、DNS查询等。