精华内容
下载资源
问答
  • 代码贴在下面, 通过从源文件的开头到结尾二进制形式把文件进行了复制, 我已经测试了一个jpg图片以及一个mp3音频文件, 理论是所有文件都进行复制的, 要想实现网络传送只需把从源文件读出的那个src_buf通过socket...

      代码贴在下面, 通过从源文件的开头到结尾二进制形式把文件进行了复制, 我已经测试了一个jpg图片以及一个mp3音频文件, 理论上是所有文件都能进行复制的, 要想实现网络传送只需把从源文件读出的那个src_buf通过socket发送出去就行了, 但这只限于接收端接受该buffer后按同样的后缀名保存该文件, 之后再对保存的文件进行操作, 若想实现音视频文件的远程播放, 请google rtsp, live555, ffmpeg

      另外大致聊一下文件后缀名, 有说错的地方欢迎大家纠正, 本来后缀名是没有用的, 它并不影响文件内 存储的内容以及结构, 但是因为我们很多程序在打开文件时, 做了通过后缀名来判断应该对该文件名做何种操作, 所以后缀名就变得有用起来, 这里举个简单的例子, 假设你电脑上打开mp3音频的默认程序是千千静听, 你可以直接双击一个mp3文件从而使千千静听播放该首歌曲, 当你把该文件后缀名改成.xxx后, 那么你将不能直接双击打开该文件了, 说明系统关联文件类型与打开该文件类型的应用程序是通过文件后缀名来起作用, 但是我们强行选中千千静听来打开该.xxx文件时, 我们还是能正常播放该音频文件的, 说明千千静听在对该音频文件进行解码播放是通过文件中的一些信息(应该是文件头部)来选定正确的解码器进行解码, 当我们把该音频文件改成.wma时, 我们仍然可以正常播放该音频, 但值得注意的是, 我们并没有对该文件进行转码, 是千千静听读取该文件时, 通过文件中的信息从而仍然选定了mp3解码器, 也许我这里举的这个例子并不合适, 我们可以看另外一个例子, 视频文件单纯的把一种存在的视频后缀格式改变成另外一种时, 可能就不能播放了, 这说明播放器在选定视频解码器的时候是通过文件后缀名来决定的

    展开全文
  • 通过【疑难解答】诊断出:未检测到正确安装的网络适配器(而且也是没有本地连接、或者网络适配器都是空的) 驱动快捷下载传送门点击下载 原文详解:...

    现象:今天一大早开机就是这造型,重启了N次,还是这样(以前重启一次就能解决)!

    通过【疑难解答】诊断出:未检测到正确安装的网络适配器(而且也是没有本地连接、或者网络适配器都是空的)

    驱动快捷下载传送门点击下载

    原文详解:https://jingyan.baidu.com/article/154b463137931628cb8f4152.html

    下载驱动,重启OK……

     

    补充说明,我是用手机下载好,用数据线拷贝电脑安装(……毕竟电脑没网很尴尬……)

     

    放个元旦回来又出问题了…………各种捣鼓,各种排查

    首先【我的电脑→管理】→如图排查适配器(如果没这样的适配器肯定有问题…………然后我把下面几个wan miniport禁用了,重启神奇的居然好了……)

     

    展开全文
  • (3)分布式协议不保证信息的及时传送,不具有实时功能。站点必须是智能的,要有媒体访问控制功能,从而增加了站点的硬件和软件开销。 环型拓扑 环形拓扑 在环型拓扑中各节点通过环路接口连在一条首尾相连的闭合环型...

    题目和答案在最下面!

     

    全文转自百度,自己总结方便自己以后查找!

    常见类型:

    1.  星型拓扑
    2.  总线拓扑
    3. 环型拓扑
    4. 树型拓扑
    5. 混合型拓
    6. 网型拓扑
    7. 开关电源拓扑

     

    简单介绍的:

    • 星型

      优点:可靠性高,方便管理,易于扩展,传输效率高

      缺点:线路利用率低,中心节点需要很高的可靠性和冗余度

      计算机网络:常见网络拓扑结构

    • 总线型

      优点:费用较低,易于扩展,线路的利用率高

      缺点:可靠性不高,维护困难,传输效率低

      计算机网络:常见网络拓扑结构

    • 环型

      优点:令牌控制,没有线路竞争,实时性强,传输控制容易

      缺点:维护困难,可靠性不高

      计算机网络:常见网络拓扑结构

    • 网状

      优点:可靠性高,易于扩充,组网灵活

      缺点:费用高,结构复杂,维护困难

      计算机网络:常见网络拓扑结构

    • 树型

      优点:成本低,易于扩充,管理较方便,故障隔离较容易。

      缺点:根节点依赖性大,如发生故障,则全网不能正常工作。

      计算机网络:常见网络拓扑结构

    • 混合型

      优点:易于拓展,安装方便,故障诊断和隔离较为方便

      缺点:建设成本比较高,依赖于中心节点

    • 计算机网络:常见网络拓扑结构

    详细点的:

    星型拓扑

    星型拓扑

    星型拓扑是由中央节点和通过点到点通信链路接到中央节点的各个站点组成。中央节点执行集中式通信控制策略,因此中央节点相当复杂,而各个站点的通信处理负担都很小。星型网采用的交换方式有电路交换报文交换,尤以电路交换更为普遍。这种结构一旦建立了通道连接,就可以无延迟地在连通的两个站点之间传送数据。目前流行的专用交换机PBX (Private Branch exchange)就是星型拓扑结构的典型实例。

    星型拓扑结构的优点

    (1)结构简单,连接方便,管理和维护都相对容易,而且扩展性强。

    (2)网络延迟时间较小,传输误差低。

    (3)在同一网段内支持多种传输介质,除非中央节点故障,否则网络不会轻易瘫痪。

    (4)每个节点直接连到中央节点,故障容易检测和隔离,可以很方便地排除有故障的节点。

    因此,星型网络拓扑结构是目前应用最广泛的一种网络拓扑结构

    星型拓扑结构的缺点

    (1)安装和维护的费用较高

    (2)共享资源的能力较差

    (3)一条通信线路只被该线路上的中央节点和边缘节点使用,通信线路利用率不高

    (4)对中央节点要求相当高,一旦中央节点出现故障,则整个网络将瘫痪。

    星型拓扑结构广泛应用于网络的智能集中于中央节点的场合。从目前的趋势看,计算机的发展已从集中的主机系统发展到大量功能很强的微型机和工作站,在这种形势下,传统的星型拓扑的使用会有所减少。

    总线拓扑

    总线拓扑

    总线拓扑结构采用一个信道作为传输媒体,所有站点都通过相应的硬件接口直接连到这一公共传输媒体上,该公共传输媒体即称为总线。任何一个站发送的信号都沿着传输媒体传播,而且能被所有其它站所接收。

    因为所有站点共享一条公用的传输信道,所以一次只能由一个设备传输信号。通常采用分布式控制策略来确定哪个站点可以发送o发送时,发送站将报文分成分组,然后逐个依次发送这些分组,有时还要与其它站来的分组交替地在媒体上传输。当分组经过各站时,其中的目的站会识别到分组所携带的目的地址,然后复制下这些分组的内容。

    总线拓扑结构的优点

    (1)总线结构所需要的电缆数量少,线缆长度短,易于布线和维护。

    (2)总线结构简单,又是元源工作,有较高的可靠性。传输速率高,可达1~100Mbps。

    (3)易于扩充,增加或减少用户比较方便,结构简单,组网容易,网络扩展方便

    (4)多个节点共用一条传输信道,信道利用率高。

    总线拓扑的缺点

    (1)总线的传输距离有限,通信范围受到限制。

    (2)故障诊断和隔离较困难。

    (3)分布式协议不能保证信息的及时传送,不具有实时功能。站点必须是智能的,要有媒体访问控制功能,从而增加了站点的硬件和软件开销。

    环型拓扑

    环形拓扑

    在环型拓扑中各节点通过环路接口连在一条首尾相连的闭合环型通信线路中,环路上任何节点均可以请求发送信息。请求一旦被批准,便可以向环路发送信息。环型网中的数据可以是单向也可是双向传输。由于环线公用,一个节点发出的信息必须穿越环中所有的环路接口,信息流中目的地址与环上某节点地址相符时,信息被该节点的环路接口所接收,而后信息继续流向下一环路接口,一直流回到发送该信息的环路接口节点为止。

    环型拓扑的优点

    (1)电缆长度短。环型拓扑网络所需的电缆长度和总线拓扑网络相似,但比星形拓扑网络要短得多。

    (2)增加或减少工作站时,仅需简单的连接操作。

    (3)可使用光纤。光纤的传输速率很高,十分适合于环型拓扑的单方向传输。

    环型拓扑的缺点

    (1)节点的故障会引起全网故障。这是因为环上的数据传输要通过接在环上的每一个节点,一旦环中某一节点发生故障就会引起全网的故障。

    (2)故障检测困难。这与总线拓扑相似,因为不是集中控制,故障检测需在网上各个节点进行,因此就不很容易。

    (3)环型拓扑结构的媒体访问控制协议都采用令牌传递的方式,在负载很轻时,信道利用率相对来说就比较低。

    树型拓扑

    树形拓扑

    树型拓扑可以认为是多级星型结构组成的,只不过这种多级星型结构自上而下呈三角形分布的,就像一颗树一样,最顶端的枝叶少些,中间的多些,而最下面的枝叶最多。树的最下端相当于网络中的边缘层,树的中间部分相当于网络中的汇聚层,而树的顶端则相当于网络中的核心层。它采用分级的集中控制方式,其传输介质可有多条分支,但不形成闭合回路,每条通信线路都必须支持双向传输。

    树型拓扑的优点

    (1)易于扩展。这种结构可以延伸出很多分支和子分支,这些新节点和新分支都能容易地加入网内。

    (2)故障隔离较容易。如果某一分支的节点或线路发生故障,很容易将故障分支与整个系统隔离开来。

    树型拓扑的缺点

    各个节点对根的依赖性太大,如果根发生故障,则全网不能正常工作。从这一点来看,树型拓扑结构的可靠性有点类似于星型拓扑结构。

    混合型拓扑

    混合型结构

    混合型拓扑是将两种单一拓扑结构混合起来,取两者的优点构成的拓扑。

    一种是星型拓扑和环型拓扑混合成的"星-环"拓扑,另一种是星型拓扑和总线拓扑混合成的"星-总"拓扑。

    这两种混合型结构有相似之处,如果将总线拓扑的两个端点连在一起也就变成了环型拓扑。

    在混合型拓扑结构中,汇聚层设备组成环型或总线型拓扑,汇聚层设备和接入层设备组成星型拓扑。

    混合型拓扑的优点

    (1)故障诊断和隔离较为方便。一旦网络发生故障,只要诊断出哪个网络设备有故障,将该网络设备和全网隔离即可。

    (2)易于扩展。要扩展用户时,可以加入新的网络设备,也可在设计时,在每个网络设备中留出一些备用的可插入新站点的连接口。

    (3)安装方便。网络的主链路只要连通汇聚层设备,然后再通过分支链路连通汇聚层设备和接入层设备。

    混合型拓扑的缺点

    (1)需要选用智能网络设备,实现网络故障自动诊断和故障节点的隔离,网络建设成本比较高。

    (2)像星型拓扑结构一样,汇聚层设备到接入层设备的线缆安装长度会增加较多。

    网型拓扑

    网型拓扑。这种结构在广域网中得到了广泛的应用,它的优点是不受瓶颈问题和失效问题的影响。由于节点之间有许多条路径相连,可以为数据流的传输选择适当的路由,从而绕过失效的部件或过忙的节点。这种结构虽然比较复杂,成本也比较高,提供上述功能的网络协议也较复杂,但由于它的可靠性高,仍然受到用户的欢迎。

    网型拓扑的一个应用是在BGP协议中。为保证IBGP对等体之间的连通性,需要在IBGP对等体之间建立全连接关系,即网状网络。假设在一个AS内部有n台路由器,那么应该建立的IBGP连接数就为n(n-1)/2个。

    网型拓扑的优点

    (1)节点间路径多,碰撞和阻塞减少。

    (2)局部故障不影响整个网络,可靠性高。

    网型拓扑的缺点

    (1)网络关系复杂,建网较难,不易扩充。

    (2)网络控制机制复杂,必须采用路由算法和流量控制机制。

    开关电源拓扑

    随着PWM技术的不断发展和完善,开关电源以其高的性价比得到了广泛的应用。开关电源的电路拓扑结构很多,常用的电路拓扑有推挽、全桥、半桥、单端正激和单端反激等形式。其中, 在半桥电路中,变压器初级在整个周期中都流过电流,磁芯利用充分,且没有偏磁的问题,所使用的功率开关管耐压要求较低,开关管的饱和压降减少到了最小,对输入滤波电容使用电压要求也较低。由于以上诸多原因,半桥式变换器在高频开关电源设计中得到广泛的应用。

    开关电源常用的基本拓扑约有14种。

    每种拓扑都有其自身的特点和适用场合。一些拓扑适用于离线式(电网供电的)AC/DC变换器。其中有些适合小功率输出(<200W),有些适合大功率输出;有些适合高压输入(≥220V AC),有些适合120V AC或者更低输入的场合;有些在高压直流输出(>~200V)或者多组(4~5组以上)输出场合有的优势;有些在相同输出功率下使用器件较少或是在器件数与可靠性之间有较好的折中。较小的输入/输出纹波和噪声也是选择拓扑经常考虑的因素。

    一些拓扑更适用于DC/DC变换器。选择时还要看是大功率还是小功率,高压输出还是低压输出,以及是否要求器件尽量少等。另外,有些拓扑自身有缺陷,需要附加复杂且难以定量分析的电路才能工作。

    因此,要恰当选择拓扑,熟悉各种不同拓扑的优缺点及适用范围是非常重要的。错误的选择会使电源设计一开始就注定失败。

    开关电源常用拓扑:

    buck开关型调整器拓扑 、boost开关调整器拓扑 、反极性开关调整器拓扑 、推挽拓扑 、正激变换器拓扑 、双端正激变换器拓扑 、交错正激变换器拓扑 、半桥变换器拓扑 、全桥变换器拓扑 、反激变换器 、电流模式拓扑和电流馈电拓扑 、SCR振谐拓扑 、CUK变换器拓扑

    开关电源各种拓扑集锦先给出六种基本DC/DC变换器拓扑

    依次为buck,boost,buck-boost,cuk,zeta,sepic变换器

    树型拓扑的缺点:

    各个节点对根的依赖性太大。

     

     

    以下关于星型网络拓扑结构的描述正确的是______。 (多选题 *必答)

    •  A 星型拓扑易于维护
    •  B 在星型拓扑中,某条线路的故障不影响其它线路下的计算机通信
    •  C 星型拓扑具有很高的健壮性,不存在单点故障的问题
    •  D 由于星型拓扑结构的网络是共享总线带宽,当网络负载过重时会导致性能下降

    A:跟B一个道理

    B:对呀,因为是一个网路一根线

    C:分开的线,出错就是单点故障啦!

    D:不是,Hub连接总线型共享总线带宽 集线器(Hub)

    展开全文
  • java面试题32:Java网络程序设计中,下列正确的描述是() A:Java网络编程API建立在Socket基础之 B:Java网络接口只支持tcP以及其上层协议 C:Java网络接口只支持UDP以及其上层协议 D:Java网络接口支持IP...

    java面试题32:Java网络程序设计中,下列正确的描述是()

    A:Java网络编程API建立在Socket基础之上
    B:Java网络接口只支持tcP以及其上层协议
    C:Java网络接口只支持UDP以及其上层协议
    D:Java网络接口支持IP以上的所有高层协议

    蒙蔽树上蒙蔽果,蒙蔽树下你和我。不多说了,先看看网络编程。

    一、网络编程基础概念

    首先理清一个概念:网络编程不等于网站编程,网络编程即使用套接字来达到进程间通信,现在一般称为TCP/IP编程。

    计算机网络:

    把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大,功能强的网络系统,从而使众多的计算机可以方便的互相传递信息,共享硬件,软件,数据信息等资源。

    计算机网络的主要功能:

        资源共享
        信息传输与集中处理
        均衡负荷与分布处理
        综合信息服务(www / 综合业务数字网络 ISDN)

    计算机网络三高问题: 高并发,高性能,高可用。

    计算机网络分类:

        局域网
        城域网
        广域网
        互联网
        等等…

    (Local Area Network;LAN) 通常我们常见的“LAN”就是指局域网,这是我们最常见、应用最广的一种网络
    二、网络通信协议及接口

    网络通信协议:

    计算机网络中实现通信必须有一些约定,即通信协议;包括对速率,传输代码,代码结构,传输控制步骤,出错控制等制定的标准。

    网络通信接口:

    为了使两个节点之间能进行对话,必须在他们之间建立通信工具(即接口),使彼此之间,能进行信息交换。接口包括两部分:

        硬件装置:实现结点之间的信息传送
        软件装置:规定双方进行通信的约定协议

    三、通信协议分层思想

    为什么要分层:

    由于结点之间联系很复杂,在制定协议时,把复杂成份分解成一些简单的成份,再将它们复合起来。最常用的复合方式就是层次方式,及同层间可以通信,上一层可以调用下一层,而与再下一层不发生关系。各层互不影响,利于系统的开发和扩展。

    通信协议的分层规定:

    把用户应用程序作为最高层,把物理通信线路作为最底层,将其间的协议处理分为若干层,规定每层处理的任务,也规定每层的接口标准。
    四、参考模型


    五、IP协议

        每个人的电脑都有一个独一无二的IP地址,这样互相通信时就不会传错信息了。

        IP地址是用一个点来分成四段的,在计算机内部IP地址是用四个字节来表示的,一个字节代表一段,每一个字节代表的数最大只能到达255。

    InetAddress类

    说到IP地址,就要引入一个类:InetAddress
    此类表示互联网协议 (IP) 地址。

    InetAddress类无构造方法

    常用方法摘要

    byte[] getAddress()
    返回此 InetAddress 对象的原始 IP 地址。
    static InetAddress getByName(String host)
    在给定主机名的情况下确定主机的 IP 地址。
    String getHostAddress()
    返回 IP 地址字符串(以文本表现形式)。
    String getHostName()
    获取此 IP 地址的主机名。
    static InetAddress getLocalHost()
    返回本地主机。
    127.0.0.1:本机地址,主要用于测试。别名:Localhost

    案例

    import java.net.InetAddress;
    import java.net.UnknownHostException;
    
    public class TestIP {
        public static void main(String[] args) throws UnknownHostException {
            //InetAdress类表示IP地址
    
            //获取本机IP
            InetAddress ip = InetAddress.getLocalHost();
            System.out.println(ip);
            //获得主机名
            System.out.println(ip.getHostName());
            //获得IP地址
            System.out.println(ip.getHostAddress());
        }
    }

    案例二

    import java.net.InetAddress;
    import java.net.UnknownHostException;
    
    public class TestIP2 {
        public static void main(String[] args) throws UnknownHostException {
            InetAddress inetAddress = InetAddress.getByName("www.baidu.com");
            // 获取此 IP 地址的主机名。
            System.out.println(inetAddress.getHostName());
            //返回 IP 地址字符串(以文本表现形式)。
            System.out.println(inetAddress.getHostAddress());
        }
    }
    
    

    运行


    在这里插入图片描述
    六、端口

        IP地址用来标识一台计算机,但是一台计算机上可能提供多种网络应用程序,如何来区分这些不同的程序呢?这就要用到端口。
        端口是虚拟的概念,并不是说在主机上真的有若干个端口。
        通过端口,可以在一个主机上运行多个网络应用程序。端口的表示是一个16位的二进制整数,2个字节,对应十进制的0~65535。

    MySQL(3306),Oracle(1521),Tomcat(8080)等等程序都有自己的端口

    查看端口

        用命令提示符cmd查看所有端口:netstat -ano
        查看具体程序:使用任务管理器查看PID

    InetSocketAddress类

    说到端口,则要引入一个类:InetSocketAddress

    此类实现 IP 套接字地址(IP 地址 + 端口号)。

    构造方法摘要
    InetSocketAddress(InetAddress addr, int port)
    根据 IP 地址和端口号创建套接字地址。
    InetSocketAddress(int port)
    创建套接字地址,其中 IP 地址为通配符地址,端口号为指定值。
    InetSocketAddress(String hostname, int port)
    根据主机名和端口号创建套接字地址。
    常用方法摘要
    InetAddress getAddress()
    获取 InetAddress。
    String getHostName()
    获取 hostname。
    int getPort()
    获取端口号。

    案例

    import java.net.InetAddress;
    import java.net.InetSocketAddress;
    
    public class TestPort {
        public static void main(String[] args) {
            InetSocketAddress inetSocketAddress = new InetSocketAddress("127.0.0.1",8082);
            System.out.println(inetSocketAddress.getHostName());
            //获得InetSocketAddress的端口
            System.out.println(inetSocketAddress.getPort());
            System.out.println(inetSocketAddress.getHostString());
            //返回一个InetAddress对象(IP对象)
            InetAddress address = inetSocketAddress.getAddress();
        }
    }
    
    

    七、URL

    URI=URL+URN

    URI:Uniform Resource Identifier ,统一资源标志符。
    URL:Uniform Resource Locator,统一资源定位符。
    URN:Uniform Resource Name,统一资源命名。

    网络三大基石:HTML,HTTP,URL
    URL

        在www上,每一信息资源都有统一且唯一的地址,即统一资源定位符。Uniform Resource Locator。
        如:https://localhost:8080/index.html ,有4部分组成。(协议,主机域名或IP,端口号,资源文件名)

    URL类

    构造方法摘要
    URL(String spec)
    根据 String 表示形式创建 URL 对象。
    URL(String protocol, String host, int port, String file)
    根据指定 protocol、host、port 号和 file 创建 URL 对象。
    URL(String protocol, String host, String file)
    根据指定的 protocol 名称、host 名称和 file 名称创建 URL。

    常用方法摘要
    String getAuthority()
    获取此 URL 的授权部分。
    int getDefaultPort()
    获取与此 URL 关联协议的默认端口号。
    String getFile()
    获取此 URL 的文件名。
    String getHost()
    获取此 URL 的主机名(如果适用)。
    String getPath()
    获取此 URL 的路径部分。
    int getPort()
    获取此 URL 的端口号。
    String getUserInfo()
    获取此 URL 的 userInfo 部分。

    案例

    import java.net.MalformedURLException;
    import java.net.URL;
    
    public class TestURL {
        public static void main(String[] args) throws MalformedURLException {
    
            URL url2 = new URL("https://www.bilibili.com/");
            
            //获取此的授权部分 URL 。
            System.out.println(url2.getAuthority());
    
            //获取此 URL的文件名。
            System.out.println(url2.getFile());
    
            //获取端口
            System.out.println(url2.getPort());
    
            //获取主机
            System.out.println(url2.getHost());
    
            //获得默认端口
            System.out.println(url2.getDefaultPort());
    
            //获得路径
            System.out.println(url2.getPath());
    
            //获取该 URL的userInfo部分。
            System.out.println(url2.getUserInfo());
        }
    }
    
     

    小结:


    八、TCP协议和UDP协议

        TCP和UDP位于同一层,都是建立在IP层的基础之上。由于两台电脑之间有不同的IP地址,因此两台电脑就可以区分开来,也就可以互相通话了。
        通话一般有两种通话方式:第一种是TCP,第二种是UDP。
        TCP是可靠的连接,TCP就像打电话,需要先打通对方电话,等待对方有回应后才会跟对方继续说话,也就是一定要确认可以发信息以后才会把信息发出去。TCP上传任何东西都是可靠的,只要两台机器上建立起了连接,在本机上发送的数据就一定能传到对方的机器上。
        UDP就好比发电报,发出去就完事了,对方有没有接收到它都不管,所以UDP是不可靠的。
        TCP传送数据虽然可靠,但传送得比较慢;UDP传送数据不可靠,但是传送得快。

    UDP编程:

    需求:完成在线咨询功能,学生和老师在线一对一交流
    分析:

        使用基于UDP协议的Socket网络编程实现
        不需要利用IO流实现数据的传输
        每个数据发送单元被统一封装成数据包的方式,发送方将数据包发送到网络中,数据包在网络中去寻找他的目的地,一切以包为中心。

    UDP基本概念:

        DatagramSocket:用于发送或接收数据包的套接字
        DatagramPacket:数据包

    实现

    接收方

    import java.io.IOException;
    import java.net.DatagramPacket;
    import java.net.DatagramSocket;
    
    public class PeopleOne {
        public static void main(String[] args) throws IOException {
            //1.开放一个端口
            DatagramSocket socket = new DatagramSocket(5051);
            //2.准备容器接收
            byte[] receiveBuf = new byte[100];
            //3.等待包裹容器封包
            DatagramPacket packet = new DatagramPacket(receiveBuf,receiveBuf.length);
            System.out.println("等你包裹来。。。。");
            while (true){
                //4.接收包裹
                socket.receive(packet);
                //5.解析包裹
                String receStr = new String(packet.getData(),0,packet.getLength());
                System.out.println("我收到了:"+receStr);
                if (receStr.equals("exit")){
                    break;
                }
            }
            //6.释放资源
            socket.close();
        }
    }

     

    发送方

    import java.io.IOException;
    import java.net.*;
    import java.util.Scanner;
    
    public class PeopleTwo {
        public static void main(String[] args) throws IOException {
            //1.指定一个端口进行发送
            DatagramSocket socket = new DatagramSocket();
            //2.指定一个IP
            InetAddress addr = InetAddress.getByName("127.0.0.1");
            int port = 5051;
            //3.准备一个小容器
            byte[] sendBuf;
            while (true){
                Scanner scanner = new Scanner(System.in);
                System.out.println("你要发什么东西:");
                String s = scanner.nextLine();
                //4.加入要放的数据
                sendBuf = s.getBytes();
                //5.数据打包
                DatagramPacket packet = new DatagramPacket(sendBuf,sendBuf.length,addr,port);
                //6.发送包
                socket.send(packet);
                if (s.equals("exit")){
                    break;
                }
            }
            //7.释放资源
            socket.close();
        }
    }

    运行
    在这里插入图片描述
    在这里插入图片描述
    TCP编程:

    需求:完成网络登录功能

        用户输入用户名密码,服务器给出登录成功或失败的提示

    分析:

        使用基于TCP协议的Socket网络编程实现
        TCP协议基于请求响应模式
        在网络通讯中,第一次主动发起通讯的程序被作为客户端程序
        第一次通讯中等待连接的程序被称作服务器程序
        利用IO流实现数据的传输

    实现

    服务器

    import java.io.DataInputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.net.ServerSocket;
    import java.net.Socket;
    
    public class TestServer {
    
        public static void main(String[] args) throws IOException {
            //服务器开启了一个监听端口
            ServerSocket serverSocket = new ServerSocket(6666);
            System.out.println("开启了服务器");
            while (true){
                //等待客户端连接
                Socket accept = serverSocket.accept();
                System.out.println("有一个人连接过来了");
                //获得客户端输入的东西
                InputStream inputStream = accept.getInputStream();
                //包装成DataInputStream流
                DataInputStream dataInputStream = new DataInputStream(inputStream);
                //通过流流读取消息
                String s = dataInputStream.readUTF();
                System.out.println(s);
            }
        }
    }

    客户端

    import java.io.DataOutputStream;
    import java.io.IOException;
    import java.net.Socket;
    
    public class TestClient {
        public static void main(String[] args) throws IOException {
            //创建同一连接
            Socket s = new Socket("127.0.0.1",6666);
            DataOutputStream dos = new DataOutputStream(s.getOutputStream());
            dos.writeUTF("hello,world!");
        }
    }

    运行
    在这里插入图片描述
    九、Socket编程

    一般的网络编程都称为Socket编程,Socket的英文意思是“插座”。

    在这里插入图片描述

        两台电脑都安装上一个插座,然后使用一根线的两端插到两台电脑的插座上,这样两台电脑就建立好了连接。这个插座就是Socket。

        因为互相之间都能互相通信,我说你是我的Server只是从逻辑意义上来讲,我应该把东西先发到你那里去,然后由你来处理,转发。所以你叫Server。但从技术意义上来讲,只有TCP才会分Server和Client。对于UDP来说,从严格意义上来讲,并没有所谓的Server和Client。TCP的Server的插座就叫ServerSocket,Client的插座就叫Socket。

        两台计算机互相连接,那么首先必须得知道它们的IP地址,但是只提供IP地址是不够的,还必须要有连接的端口号,也就是要连接到哪个应用程序上。

        端口号是用来区分一台机器上不同的应用程序的。端口号在计算机内部是占2个字节。一台机器上最多有65536个端口号。一个应用程序可以占用多个端口号。端口号如果被一个应用程序占用了,那么其他的应用程序就无法再使用这个端口号了。记住一点,我们编写的程序要占用端口号的话占用1024以上的端口号,1024以下的端口号不要去占用,因为系统有可能会随时征用。端口号本身又分为TCP端口和UDP端口,TCP的8888端口和UDP的8888端口是完全不同的两个端口。TCP端口和UDP端口都有65536个。
    好像没啥评论,答案A,D,留给思考的你们。

    我是歌谣,今天刷题结束。不断积累,不断学习,共同交流,不多说了,代码走起来。

    阅读目录(置顶)(长期更新计算机领域知识)

    阅读目录(置顶)(长期更新计算机领域知识)

    阅读目录(置顶)(长期科技领域知识)

    歌谣带你看java面试题

    展开全文
  • 需要网络安全制度汇编请下载网络安全等级保护-信息安全管理制度汇编参考下载,等级保护测评公司,网络安全等级保护测评,等级保护测评机构,等级保护机构 需要加强等网络信息安全级保护定级备案,网络安全测评及...
  • 计算机网络谢希仁第七版 课后答案

    万次阅读 多人点赞 2019-09-03 23:13:25
    谢希仁计算机网络第七版课后答案 第一章 概述 1-01 计算机网络向用户可以提供那些...答: (1)电路交换:端对端通信质量因约定了通信资源获得可靠保障,对连续传送大量数据效率高。(2)报文交换:无须预约传输带...
  • JMS消息传送机制

    千次阅读 2016-05-29 12:11:45
    这就需要JMS提供一种"保证传送"机制和事务.如果抛开JMS的规范,那么它的技术实现本身就是网络IO + 文件存储;其中网络IO的困境就在"数据传输安全保证""网络失效"等方面,"文件存储"即要求数据需要被高效的存取.其中...
  • 【计算机网络】谢希仁笔记 应用层

    千次阅读 多人点赞 2019-05-05 10:40:54
    目录 域名系统 DNS 域名系统概述 互联网的域名结构 域名服务器 文件传送协议 ...简单文件传送协议 TFTP ...万维网的信息检索系统 博客和微博 社交网络 电子邮件 电子邮件概述 简单邮件传送协议 SMT...
  • CNN卷积神经网络原理详解(

    万次阅读 多人点赞 2019-10-18 23:59:17
    CNN卷积神经网络原理详解()前言卷积神经网络的生物背景我们要让计算机做什么?卷积网络第一层全连接层训练 前言 卷积网络(convolutional network),也叫作卷积神经网络(convolutional neural network,CNN),是...
  • 网络编程面试题(2020最新版)

    万次阅读 多人点赞 2020-03-16 17:36:28
    文章目录计算机网络体系结构网络协议是什么?为什么要对网络协议分层?TCP/IP 协议族应用层运输层网络层数据链路层物理层TCP/IP 协议族TCP的三次握手四次挥手TCP报文的头部结构三次握手四次挥手常见面试题为什么TCP...
  • 计算机网络的核心概念

    万次阅读 多人点赞 2019-12-31 10:44:21
    这是《计算机网络》系列文章的第二篇文章 我们第一篇文章讲述了...网络的核心是由因特网端系统和链路构成的网状网络,下面这幅图正确的表达了这一点 那么在不同的 ISP 和本地以及家庭网络是如何交换信息的呢?...
  • 《计算机网络》复习笔记

    万次阅读 多人点赞 2018-01-05 21:20:48
    《计算机网络》复习笔记 本复习笔记基于谢希仁的《计算机网络》第五版教材整理。 计算机网络复习笔记 绪论 1 计算机网络 2 因特网概述 3 互联网的组成 P8 4 计算机网络的类别 P17 5 计算机网络的体系结构 P25 ...
  • 学过计算机网络的同学可能知道,在这互联网中,计算机与计算机之间的数据传送,主要是基于各种“协议”串联起来的。不过今天要讲的,并不会详细去讲各种协议,而是通过各种简化之后,让你大概知道数据之...
  • 计算机网络第四章答案 复习四(网络层)

    万次阅读 多人点赞 2018-12-20 23:57:48
    1.网络层向上提供的服务有哪两...即所传送的分组不出错、丢失、重复和失序(不按序列到达终点),也保证分组传送的时限,缺点是路由器复杂,网络成本高;后者无网络资源障碍,尽力而为,优缺点与前者互易 2.网络互连...
  • 计算机网络——网络硬件和网络设备及其工作原理

    万次阅读 多人点赞 2018-10-09 01:26:36
    网卡是工作在链路层的网络组件,是局域网中连接计算机和传输介质的接口,不仅实现与局域网传输介质之间的物理连接和电信号匹配,还涉及帧的发送与接收、帧的封装与拆封、介质访问控制、数据的编码与解码以及数据...
  • 网络基础——牛客网刷题第四波

    千次阅读 2019-06-06 21:11:38
    1.ATM网络采用固定长度的信元传送数据,信元长度为(B) A. 1024B B. 53B C. 128B D. 64B 解析:ATM 网络采用固定长度的信元传送数据: 信元长度:53 B,其中头长度为5 B,数据长度为48B; 2.来一波干货: ...
  • ActiveMQ消息传送机制深入

    万次阅读 2017-08-07 13:50:50
    ActiveMQ消息传送机制以及ACK机制详解 AcitveMQ是作为一种消息存储和分发组件,涉及到client与broker端数据交互的方方面面,它不仅要担保消息的存储安全性,还要提供额外的手段来确保消息的分发是可靠的。...
  • 计算机网络核心知识点总结&面试笔试要点

    万次阅读 多人点赞 2019-08-21 22:22:23
      计算机网络主要由一些通用的、可编程的硬件互连而成,通过这些硬件,可以传送不同类型的数据,并且可以支持广泛和日益增长的应用。  2.计算机网络的分类   按照网络的作用范围:广域网(WAN)、城域网(MAN)...
  • DNS域传送漏洞的收集、检测与利用

    万次阅读 2016-12-03 20:37:09
    LandGrey DNS域传送漏洞的收集、检测与利用; nslookup nmap dig在Dns Zone Transfer漏洞的使用; 提供多个批处理与利用脚本。
  • 【期末复习】带着问题看网络信息安全

    万次阅读 多人点赞 2019-01-12 11:18:57
    身份认证:用户要向系统证明他就是他所声称的那个人,目的是为了防止非法用户访问系统和网络资源。 访问控制:限制主体对访问客体的访问权限,从而使计算机系统在合法范围内使用。 不可否认:通信方必须对自己...
  • 网络性能监控指标

    千次阅读 2019-03-12 23:45:11
    网络性能监控(Network Performance Monitoring NPM)是指用户体验到的测量,诊断和优化网络服务质量的过程。NPM是应用程序性能管理(Application Performance Management APM)的补充。 网络性能监控解决了网络在...
  • 网络蜘蛛即Web Spider,是一个很形象的名字。把互联网比喻成一个蜘蛛网,那么Spider就是在网上爬来爬去的蜘蛛。网络蜘蛛是通过网页的链接地址来寻找网页,从 网站某一个页面(通常是首页)开始,读取网页的内容,...
  •  虽然作为程序员来讲不必过多的去了解网络互联的相关技术,但是目前互联网已经转向了物联网时代,从刚开始的软件+网络,成为今天的硬件+软件+网络的模式(即物联网) 智能家居的实现模式也是典型的物联网产物。因此...
  • 【计算机网络】谢希仁教材轻松解读 概述篇

    千次阅读 多人点赞 2019-02-26 22:40:10
    写在前面的话: 谢希仁老师的《计算机网络》是一本很不错的书,讲的很详细,在术语方面用词,也非常的...21 世纪的一些重要特征是数字化、网络化和信息化,它是一个以网络为核心的信息时代。 网络现在已经成为信...
  • 计算机网络知识点汇总(谢希仁 第七版)

    万次阅读 多人点赞 2018-09-18 17:34:34
    这篇博客是当时在大二的时候为了学习计网总结的一篇学习笔记,其实当时的做法和抄书差不多,但是时隔两年的时间没想到有这么多的 同学会来关注学习,实在受宠若惊; 现在我已经大四,而且刚刚经历过秋招(2019/12)...
  • 网络安全第五讲 网络攻击技术分析

    万次阅读 多人点赞 2020-10-24 17:06:30
    网络信息安全第五讲 网络攻击技术分析 按照攻击目的,可将攻击分为破坏型和入侵型两种类型。 破坏型攻击以破坏目标为目的,但攻击者不随意控制目标的系统资源。 入侵型攻击以控制目标为目的,比破坏型攻击威胁更...
  • 计算机网络体系结构综述(

    万次阅读 多人点赞 2017-04-07 18:54:58
    计算机网络体系结构标准的制定使得两台计算机能够像两个知心朋友那样能够互相准确理解对方的意思并做出优雅的回应。本文首先概述了计算机网络体系结构的提出动机,并结合日常生活中的邮政系统介绍了设计的理念,并给...
  • SQL SERVER日志传送

    千次阅读 2008-12-03 14:05:00
    第一章 测试背景SQL SERVER日志传送功能可自动复制数据库的日志文件,并回存到备份服务器 (standby server) 的另外一个数据库。因此可大幅提高SQL Server数据库的可用性。因为备份数据库完整地接收来源数据库的...
  • 【计算机网络】谢希仁笔记 运输层

    千次阅读 多人点赞 2019-04-21 17:20:49
    网络的边缘部分中的两个主机使用网络的核心部分的功能进行端到端的通信时,只有位于网络边缘部分的主机的协议栈才有运输层,而网络核心部分中的路由器在转发分组时都只用到下三层的功能。 运输层的作用: ...
  • 交换器,路由器,集线器...集线器一般有4、8、16、24、32等数量的RJ45接口,通过这些接口,集线器便为相应数量的电脑完成“中继”功能(将已经衰减得不完整的信号经过整理,重新产生出完整的信号再继续传送)。由于它

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 137,251
精华内容 54,900
关键字:

为了能网络上正确的传送信息