通信

机算计网络基本概念

落花浮王杯 提交于 2020-03-29 00:49:04
将地理位置不同但具有独立功能的多个计算机系统,通过通信设备和通信线路连接起来,在功能完善的网络软件(网络协议、网络操作系统、网络应用软件等)的协调下实现资源共享的计算机系统的集合,以资源共享为目的的自主互联的计算机系统的集合。四个元素:独立自主的计算机系统的集合;要通过通信介质将计算机连接起来;要有一个共同遵守的规则或协议;以资源共享和数据通信为目的。 按网络传输技术分类   网络采用的传输技术有两类:广播方式和点对点方式   在广播式网络中,多有联网计算机都共享一个公共信道,当一台计算机利用共享信道发送报文分组时,所有其它计算机都会"收听"到这个分组.由于发送的分组中带有目的地址和源地址,如果几首到该分组的计算机的地址与该分组的目的地址相同,则接受该分组,否者丢弃该分组,因此在广播式网络中发送的报文分组的目的地址可以有2类:单播地址,多播地址和广播地址   在点对点式网络中,没条物理线路连接一对计算机,如果源节点与目的节点之间没有直接连接的线路,name源节点发送的分组就要通过中间节点的接受,存储于转发,自至传输发哦目的节点,因此从源节点到目的节点可能存在多条路径,决定分组从通信子网的源节点到达目的节点的路由需要有路由选择算法,采用存储准发和路由选择机制是点对点式网络与广播式网络的重要区分之一 来源: 51CTO 作者: wx5e7f024811a2d 链接: https:/

使用VLAN隔离广播域

可紊 提交于 2020-03-29 00:28:09
Vlan是虚拟局域网。用途是在二层可以隔离广播域,从而提高数据传输的效率。 在不同的网络端口划分了Vlan时,二层的数据转发的仅能在同一个vlan下进行通信。从而实现了即使在同一个网段下的广播消息隔离。 为什么要使用vlan隔离广播域,可以先了解下以太网的冲突域与广播域 冲突域 CSMA/CD是以太网采用了随机访问控制协议的带有冲突检测的载波侦听多址访问方法作为多路访问控制协议。形象的说,在此方法下每个接入网络的人都有发送消息的权利,但在同一时间只能有一个人占当前的线路,否则会发生混乱,因此每个人需要在发生前进行载波侦听(是否有人正在占线),如果有则需要等待后才可以发送消息。当两端同时发生冲突时,则会发生冲突检测,会话终止并随机等待一段时间后再开始的判断。 因此,在同一个网络介质下的多个节点按照以上方式进行共享链路带宽的传输任务。而当冲突发生时网络进行随机一段时间的等待(称为回退),此时不进行传输。而当链路中的节点越多冲突的发生概率就会更大,无法保证通信质量。将连在同一介质下的所有节点集合,称作冲突域。此时,总线型的网络方式就不够合适了,于是引入了二层交换机。 二层交换机,工作在数据链路层,是基于MAC地址的基础上对数据包的转发。内部的ASIC的芯片来实现硬件转发。二层交换机的端口发送和接受数据独立,从而可以将各端口归属于不同的冲突域,从而有效的隔离了冲突。 广播域

OSI体系结构(一)——物理层详解

我与影子孤独终老i 提交于 2020-03-28 16:19:16
前言 我们知道,虽然OSI协议的实现太过于复杂,几乎没有厂商可以生产出符合该协议的通信产品,但OSI七层模型的体系结构,概念十分清晰,理论也很完整。本文就OSI体系结构来进行介绍和对比。 国际标准化组织除了定义了OSI参考模型外,还开发了实现7个功能层次的各种协议和服务标准,这些协议和服务统称为“OSI协议”。OSI协议是一些已有的协议和OSI新开发的协议的混合体。例如,大部分物理层和数据链路层协议采用的是现有的协议,而数据链路层以上的是由该组织自行起草的。产生OSI协议的目的是提出能满足所有组网需求的国际标准,但到目前为止,实现情况距离这一目标还非常遥远。 虽然OSI协议集缺乏商业动力,但OSI/RM作为网络系统的知识框架,对于学习和理解网络标准还是十分有用的。和其他的协议集一样,OSI协议是实现某些功能过程的描述和说明。每一个OSI协议都详细的规定了特定层次的功能特性。 OSI协议集如下图所示: 下面我们来分别说明7个功能层次的各种协议与各层的功能: 在物理层中,OSI采用了各种现有的协议,其中有RS-232、RS-449、X.21、V.35、ISDN,以及FDDI、IEEE 802.3、IEEE 802.4和IEEE 802.5的物理层协议。 物理层(Physical Layer)是OSI模型中最低的一层,位于OSI参考模型的最底层,它直接面向实际承担数据传输的物理媒体

OSI体系结构——数据链路层详解

六眼飞鱼酱① 提交于 2020-03-28 16:19:00
前言 数据链路层是OSI参考模型中的第二层,介乎于物理层和网络层之间。数据链路层在物理层提供的服务的基础上向网络层提供服务,数据链路层是对物理层传输原始比特流的功能的加强,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,使之对网络层表现为一无差错的线路。为达到这一目的,数据链路必须具备一系列相应的功能。本文就数据链路层具有的功能进行相关介绍。 一、 数据链路的概念以及相关基础知识 上图为两台主机通过互联网进行通信时数据链路层所处的地位。 本文只关心在协议栈中水平防线的各数据链路层。当H1向H2发送数据时,我们可以想象数据就是在数据链路层从左向右水平传送的。于是在数据链路层的层面上,有如下链路:H1链路层→R1链路层→R2链路层→R3链路层→H2链路层 由此,我们引出了一些基本概念: 链路(link):一条无源的物理线路段,中间没有其他的交换结点。一条链路只是一条通路的一个组成部分。 数据链路(date link):除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。 现如今,最常用的方法就是使用网络适配器(网卡)来实现这些要求,一般网卡包含了数据链路层和物理层两层的功能。 数据在信道中传输,其在数据链路层中的数据单元叫做帧。 数据链路层把网络层交下来的数据封装成帧发送到链路上,并将收到的帧中的数据取出

Android进程间通信之LocalSocket通信

☆樱花仙子☆ 提交于 2020-03-28 05:03:41
LocalSocket,在Unix域名空间创建的一个套接字(非服务端)。 是对Linux中Socket进行了封装,采用JNI方式调用,实现进程间通信。 具体就是Native层Server和Framework层Client之间进行通信,或在各层次中能使用Client/Server模式实现通信。 在这里通过LocalSocket实现应用之间的通信,可以接收、发送数据,同时将接收到的数据通过activty显示。 Server端: package com.example.driverexam; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import android.net.Credentials; import android.net.LocalServerSocket; import android.net.LocalSocket; import android.os.Handler; import android.os.Message; import android.util.Log; /** * 通过LocalSocket实现 * @author Administrator * */

同步 异步 阻塞 非阻塞

我的未来我决定 提交于 2020-03-28 03:52:56
同步:函数没有执行完不返回,线程被挂起;   阻塞:没有收完数据函数不返回,线程也被挂起;   异步:函数立即返回,通过事件或是信号通知调用者;   非阻塞:函数立即返回,通过select通知调用者 这样看来异步和非阻塞有什么区别呢? 异步=非阻塞? 同步是在操作系统层面上,阻塞是在套接字上? Reactor是同步 Proactor是异步? 回答: 同步、异步、阻塞和非阻塞的概念   在进行网络编程时,我们常常见到同步、异步、阻塞和非阻塞四种调用方式。这些方式彼此概念并不好理解。下面是我对这些术语的理解。 同步   所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。按照这个定义,其实绝大多数函数都是同步调用(例如sin,isdigit等)。但是一般而言,我们在说同步、异步的时候,特指那些需要其他部件协作或者需要一定时间完成的任务。最常见的例子就是SendMessage。该函数发送一个消息给某个窗口,在对方处理完消息之前,这个函数不返回。当对方处理完毕以后,该函数才把消息处理函数所返回的LRESULT值返回给调用者。 异步   异步的概念和同步相对。当一个异步过程调用发出后,调用者不能立刻得到结果。实际处理这个调用的部件在完成后,通过状态、通知和回调来通知调用者。以CAsycSocket类为例(注意,CSocket从CAsyncSocket派生

『翻译』Android USB Host

南笙酒味 提交于 2020-03-28 03:03:00
USB Host When your Android-powered device is in USB host mode, it acts as the USB host, powers the bus, and enumerates connected USB devices. USB host mode is supported in Android 3.1 and higher. 当您的Android设备处于USB主机模式时,它充当USB主机,为总线供电,并枚举连接的USB设备。Android 3.1及更高版本支持USB主机模式。 API Overview Before you begin, it is important to understand the classes that you need to work with. The following table describes the USB host APIs in the android.hardware.usb package. 在开始之前,你要理解你所要使用的类是非常重要的。以下表格描述了 android.hardware.usb 包中的 USB主机模式API。 Table 1. USB Host APIs Class Description UsbManager Allows you to

Golang Channel详解

旧城冷巷雨未停 提交于 2020-03-27 18:07:14
3 月,跳不动了?>>> 感谢参考原文- http://bjbsair.com/2020-03-27/tech-info/7058/ 引言 Goroutine 和 Channel 是 Go 语言并发编程的两大基石。Goroutine 用于执行并发任务,Channel 用于 goroutine 之间的同步、通信。 在Golang的并发哲学里,有一句非常著名的话: Do not communicate by sharing memory; instead, share memory by communicating. 意思是:不要通过共享内存来通信,而要通过通信来实现内存共享,它依赖CSP(Communication Sequence Process) 模型,简称通信顺序进程。 Go提倡使用通信的方法代替共享内存,当一个Goroutine需要和其他Goroutine资源共享时,Channel就会在他们之间架起一座桥梁,并提供确保安全同步的机制。 Channel本质上还是一个队列,遵循FIFO(First In-First Out)原则, 创建通道 创建通道需要用到关键字 make ,格式如下: 通道实例 := make(chan 数据类型) 数据类型:通道内传输的元素类型。 通道实例:通过make创建的通道句柄。 使用通道 通道创建后,就可以使用通道进行发送和接收操作。 写入

什么是光分路器,有哪些重要技术指标?

天大地大妈咪最大 提交于 2020-03-27 17:45:26
光分路器是光纤链路中重要的无源器件之一,主要起分光的作用,一般应用在无源光网络的光线路终端OLT和光网络终端ONU之间实现光信号的分路。 光分路器是将一根光纤中的传输光信号,分配到多根光纤。分配形式有多种,1×2,1×4,1×N,或2×4,M×N。FTTH的一般架构是:OLT(机房局端)——ODN(无源光网络分配系统)——ONU(用户端),其中光分路器就应用在ODN中,来实现多个终端用户共享一个PON接口。在PON结构中,在建筑物分布较散且不规则,如别墅分布,间距远,用户密度低时,采用集中分光方式可以充分利用资源,覆盖周边。 一个无源光网络中可能只使用了一个光分路器,也可能使用多个光分路器集中在一起进行对光信号进行分路。 影响光分路器的性能指标一般有以下几种: 插入损耗 光纤分路器的插入损耗是指每一路输出相对于输入光损失的dB数。一般来说,插入损耗值越小, 分光比 分光比定义为光纤分路器各输出端口的输出功率比值。通常,PLC光分路器的分光比是平均分配的,熔融拉锥光分路器的分光比是可以不等分。而分光比的具体比值设置和传输光的波长有关,例如一个光分路在传输1.31 微米的光时两个输出端的分光比为50:50;在传输1.5μm的光时,则变为70:30(之所以出现这种情况,是因为光纤分路器都有一定的带宽,即分光比基本不变时所传输光信号的频带宽度)。 隔离度

关于计算机网络的性能指标你需要知道这些

大憨熊 提交于 2020-03-27 12:24:44
3 月,跳不动了?>>> @ TOC 前言 冷月最近在学习谢仁希老师的《计算机网络》,为此将自己所学的知识点总结出来和大家分享。 本次介绍的内容是性能指标的相关知识。性能指标是指判断计算机通讯性能,下面介绍常用的七个性能指标。 带宽 在计算机网络中,带宽有两个概念: 1.通信线路允许通过的信号频带范围(单位:Hz) 2.网络的通信线路所能传送数据的能力,也就是“最高数据率”(单位:b/s) 速率 速率是指在数字信道上传送数据的速率,最高数据率就是带宽。 时延 时延分为四个部分:发送时延、传播时延、处理时延、排队时延。 发送时延 :分组长度/信道宽度 传播时延 :信道长度/电磁波在信道上的传播速率 处理时延 :数据包到达设备或者目的机器被处理所需要的时间 排队时延 :数据包在网络设备中等待被处理的时间 时延带宽积 时延带宽积就是指当前信道能够传输的所有比特 计算公式:传播时延*信道带宽 往返时延(RTT) 往返时延是指从发送端开始发送到发送端收到确认。可以使用ping命令来查看。如下图所示,在ping baidu.com 得到的返回数据是34ms。也就是说当前的服务器发送数据包到接受到百度的返回包花了34ms,RTT=34ms。 <img src="https://img-blog.csdnimg.cn/20200326190955872.png" width="80%"> 吞吐量