计算机网络

宽带的理解

生来就可爱ヽ(ⅴ<●) 提交于 2019-12-13 19:12:58
一、带宽的两种概念   如果从电子电路角度出发,带宽(Bandwidth)本意指的是电子电路中存在一个固有通频带,这个概念或许比较抽象,我们有必要作进一步解释。大家都知道,各类复杂的电子电路无一例外都存在电感、电容或相当功能的储能元件,即使没有采用现成的电感线圈或电容,导线自身就是一个电感,而导线与导线之间、导线与地之间便可以组成电容——这就是通常所说的杂散电容或分布电容;不管是哪种类型的电容、电感,都会对信号起着阻滞作用从而消耗信号能量,严重的话会影响信号品质。这种效应与交流电信号的频率成正比关系,当频率高到一定程度、令信号难以保持稳定时,整个电子电路自然就无法正常工作。为此,电子学上就提出了“带宽”的概念,它指的是电路可以保持稳定工作的频率范围。而属于该体系的有显示器带宽、通讯/网络中的带宽等等。   而第二种带宽的概念大家也许会更熟悉,它所指的其实是数据传输率,譬如内存带宽、总线带宽、网络带宽等等,都是以“字节/秒”为单位。我们不清楚从什么时候起这些数据传输率的概念被称为“带宽”,但因业界与公众都接受了这种说法,代表数据传输率的带宽概念非常流行,尽管它与电子电路中“带宽”的本意相差很远。   对于电子电路中的带宽,决定因素在于电路设计。它主要是由高频放大部分元件的特性决定,而高频电路的设计是比较困难的部分,成本也比普通电路要高很多。这部分内容涉及到电路设计的知识

第二章 分布式计算泛型

房东的猫 提交于 2019-12-12 03:56:58
第二章 分布式计算泛型 分布式计算泛型也就是 分布式计算模式例子或模型 。 分布式计算泛型包括消息传递、客户/服务器、p2p、消息系统、远程过程调用、分布式对象、网络服务、移动代理和云服务九种常见泛型。 2.1 消息传递泛型 消息传递是进程之间互相通信的基本途径。 工作原理:两个进程间传递消息,一个为发送者,一个为接收者。发送者发送一条请求消息,该消息被传送到接收者,由接收者处理并发送一条应答消息。 消息传递模式是最基本的传递消息的泛型,很多即时通信工具都是基于该泛型的具体应用。 2.2 客户/服务器泛型 工作原理:客户/服务器泛型由客户端和服务器组成,为两个协作进程分配非对称角色,客户进程向服务器发起请求并等待响应,服务器进程等待来自客户的请求给出回应。 客户/服务器泛型是网络应用中使用最多的一种分布式计算泛型。 2.3 p2p泛型 P2P泛型源于P2P网络(又称为对等计算机网络)。p2p网络是一种无中心服务器,依赖用户群交换的互联网体系,每个用户端既是一个节点,又有服务器的功能。可以说是没有服务器,也可以说每个用户端都是一台服务器。 工作原理:服务器进程提供服务,客户进程通过服务器访问服务。 2.4 消息系统泛型 消息系统泛型或面向对象的中间件是在基本的消息传递泛型的基础上扩展而来的。 工作原理:消息系统充当独立的进程之间的中介,不同的进程以非耦合方式通过消息系统异步地交换消息

基于java的简单Socket编程

时光毁灭记忆、已成空白 提交于 2019-12-11 20:41:55
1TCP协议与UDP协议 1.1 TCP TCP是(Tranfer Control Protocol)的简称,是一种面向连接的保证可靠传输的协议。通过TCP协议传输,得到的是一个顺序的无差错的数据流。发送方和接收方的成对的两个socket之间必须建立连接,当一个socket(通常都是server socket)等待建立连接时,另一个socket可以要求进行连接,一旦这两个socket连接起来,它们就可以进行双向数据传输,双方都可以进行发送或接收操作。 TCP的三次握手 建立起一个TCP连接需要经过“三次握手”:第一次握手:客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。 握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连接之前,TCP 连接都将被一直保持下去。断开连接时服务器和客户端均可以主动发起断开TCP连接的请求。

python socket基础

不羁岁月 提交于 2019-12-11 14:09:45
# socket """ Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求,使主机间或者一台计算机上的进程间可以通讯 语法: socket.socket(AddressFamily, Type) 该函数带有两个参数: Address Family:可以选择 AF_INET(用于 Internet 进程间通信) 或者 AF_UNIX(用于同一台机器进程间通信),实际工作中常用AF_INET Type:套接字类型,可以是 SOCK_STREAM(流式套接字,主要用于 TCP 协议)或者 SOCK_DGRAM(数据报套接字,主要用于 UDP 协议) 套接字使用流程: 创建套接字 使用套接字收/发数据 关闭套接字 """ # 创建TCP 语法 """ import socket # 创建tcp的套接字 tcp_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # ...这里是使用套接字的功能... # 关闭套接字 tcp_socket.close() """ # 创建UDP 语法 """ import socket # 创建tcp的套接字 tcp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) # ..

华为手机怎么连接电脑传输

半城伤御伤魂 提交于 2019-12-11 11:12:49
华为首创无线连接电脑,可以在电脑上对手机的文件和图片直接操作,步骤如下: 一,打开电脑和手机,共同在WIFI局域网环境下,点击手机的“设置”,然后找到“设备与连接”,点击。 二,看到“Huawei Share”选项了吗?点击开启它,然后看到第二个选项“共享至电脑”,也点击开启它,并且你会看到电脑端显示名,比如“Huawei30"。 三,在WIFII局域网环境下,这时候手机和电脑已经连上了,在电脑上操作,点击“计算机”,有的电脑是”我的计算机“,再点击”网络“,有的是在左边的目录里找到”网络“,在”网上邻居“上就看到手机名“Huawei30",然后点击它就可以直接在电脑上对手机操作了,比如传输文件,复制或删除文件和图片等,是不是很方便,很高效? 来源: CSDN 作者: mengxuanqwe 链接: https://blog.csdn.net/mengxuanqwe/article/details/103487501

Linux Socket编程(不限Linux)

丶灬走出姿态 提交于 2019-12-10 19:53:47
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> “一切皆Socket!” 话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket。 ——有感于实际编程和开源项目研究。 我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的QQ进程通信?这些都得靠socket?那什么是socket?socket的类型有哪些?还有socket的基本函数,这些都是本文想介绍的。本文的主要内容如下: 1、网络中进程之间如何通信? 2、Socket是什么? 3、socket的基本操作 3.1、socket()函数 3.2、bind()函数 3.3、listen()、connect()函数 3.4、accept()函数 3.5、read()、write()函数等 3.6、close()函数 4、socket中TCP的三次握手建立连接详解 5、socket中TCP的四次握手释放连接详解 6、一个例子(实践一下) 7、留下一个问题,欢迎大家回帖回答!!! 1、网络中进程之间如何通信? 本地的进程间通信(IPC)有很多种方式,但可以总结为下面4类: 消息传递(管道、FIFO、消息队列) 同步(互斥量、条件变量、读写锁、文件和写记录锁、信号量) 共享内存

(10)Java基础之网络编程

和自甴很熟 提交于 2019-12-10 01:50:21
(10)【网络编程】 主要内容 软件架构CS/BS 网络通信三要素 TCP通信 Socket套接字 ServerSocket 第一章 网络编程入门 1.1软件结构 C/S结构 :全称为Client/Server结构,是指客户端和服务器结构。常见程序有QQ、迅雷等软件。 B/S结构 :全称为Browser/Server结构,是指浏览器和服务器结构。常见浏览器有谷歌、火狐等。 两种架构各有优势,但是无论哪种架构,都离不开网络的支持。 网络编程 ,就是在一定的协议下,实现两台计算机的通信的程序。 1.2 网络通信协议 **网络通信协议:**通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和通信时需要遵守一定的规则,这就好比在道路中行驶的汽车一定要遵守交通规则一样。在计算机网络中,这些连接和通信的规则被称为网络通信协议,它对数据的传输格式、传输速率、传输步骤等做了统一规定,通信双方必须同时遵守才能完成数据交换。 TCP/IP协议: 传输控制协议/因特网互联协议( Transmission Control Protocol/Internet Protocol),是Internet最基本、最广泛的协议。它定义了计算机如何连入因特网,以及数据如何在它们之间传输的标准。它的内部包含一系列的用于处理数据通信的协议,并采用了4层的分层模型

实现一个的简单的网络聊天程序

烈酒焚心 提交于 2019-12-10 01:30:59
   本次实验采用Java语言,编写了一个简单的聊天室程序,可以实现多人之间的聊天。以下将对该程序进行详尽分析,并对比分析该编程语言提供的网络接口API与Linux Socket API之间的关系。 1、 网络通信相关要素 1) 协议   通信的协议还是比较复杂的, java.net 包中包含的类和接口,它们提供低层次的通信细节。我们可以直接使用这 些类和接口,来专注于网络程序开发,而不用考虑通信的细节。 java.net 包中提供了两种常见的网络协议的支持: TCP:传输控制协议 (Transmission Control Protocol)。TCP协议是面向连接的通信协议,即传输数据之前, 在发送端和接收端建立逻辑连接,然后再传输数据,它提供了两台计算机之间可靠无差错的数据传输。 三次握手:TCP协议中,在发送数据的准备阶段,客户端与服务器之间的三次交互,以保证连接的可 靠。 第一次握手,客户端向服务器端发出连接请求,等待服务器确认。 第二次握手,服务器端向客户端回送一个响应,通知客户端收到了连接请求。 第三次握手,客户端再次向服务器端发送确认信息,确认连接。整个交互过程如下图所示。    完成三次握手,连接建立后,客户端和服务器就可以开始进行数据传输了。由于这种面向连接的特性,TCP协议可 以保证传输数据的安全,所以应用十分广泛,例如下载文件、浏览网页等。    UDP

socket网络编程1

江枫思渺然 提交于 2019-12-09 23:03:13
1.什么是网络: 网络是信息传输、接收、共享的虚拟平台。 2.什么是网络编程: 通过操作相应的api调度计算机硬件资源,并利用传输管道(网线)进行数据交换的过程 。 具体涉及:网络模型、套接字、数据包 3.7层网络模型-OSI 应用层:略 表示层:将应用的数据表示为对应的数据层面的数据,比如说字符串转化为一些人看不懂的奇奇怪怪的数据 会话层:不同机器之间用户之间建立管理的作用。 传输层:接收上一层的数据,并在必要的时候对数据进行分割然后交给网络层,会保证这些数据的有效性(将数据有效的传递给对方)。 TUP-UDP协议层、Socket 网络层:控制子网的运行。比如逻辑地址进行分组的传输以及路由的选择。 数据链路层:主要是进行物理的地址寻找,同时将原始的比特流转化为逻辑的传输路线 物理层:最底层的机械电子传输.....(电信号、光信号传输) 4.网络模型对应关系: 来源: https://www.cnblogs.com/lyjblogg/p/12005091.html

Java Socket编程----通信是这样炼成的

﹥>﹥吖頭↗ 提交于 2019-12-09 17:04:55
Java最初是作为网络编程语言出现的,其对网络提供了高度的支持,使得客户端和服务器的沟通变成了现实,而在网络编程中,使用最多的就是Socket。像大家熟悉的QQ、MSN都使用了Socket相关的技术。下面就让我们一起揭开Socket的神秘面纱。 Socket编程 一、网络基础知识(参考计算机网络) 关于计算机网络部分可以参考相关博客: 《 TCP/IP协议栈及OSI参考模型详解》 http://wangdy.blog.51cto.com/3845563/1588379 1、两台计算机间进行通讯需要以下三个条件: IP地址、 协议、 端口号 2、TCP/IP协议: 是目前世界上应用最为广泛的协议,是以TCP和IP为基础的不同层次上多个协议的集合,也成TCP/IP协议族、或TCP/IP协议栈 TCP:Transmission Control Protocol 传输控制协议 IP:Internet Protocol 互联网协议 3、TCP/IP五层模型 应用层:HTTP、FTP、SMTP、Telnet等 传输层:TCP/IP 网络层: 数据链路层: 物理层:网线、双绞线、网卡等 4、IP地址 为实现网络中不同计算机之间的通信,每台计算机都必须有一个唯一的标识---IP地址。 32位二进制 5、端口 区分一台主机的多个不同应用程序,端口号范围为0-65535,其中0-1023位为系统保留。