• 网络编程基础知识(待更新补充)


    1.C/S架构(client/server)

      即客户端(泛指客户端程序exe)与服务端架构

    2.B/S架构(Browser/Server)

      浏览器端与服务器端架构

     3.广播

      主机之间‘一对所有’的通讯模式,网络对其中每一台主机发出的信号无条件复制并转发,所有主机都可无条件接收

      特点:一对多,不用考虑路径,网络成本低

      应用领域:有线电视网,它实质接收所有频道的信号,但只将一个频道的信号还原成画面

      PS:数据网络中也允许广播的存在,但其被限制在二层交换机的局域网范围内,禁止广播数据穿过路由器,防止广播数据影响大面积的主机

     4.ip地址与ip协议(四段十进制数)

      规定网络地址的协议被称为ip协议,它所定义的地址被称为ip地址,广泛采用的是v4版本,规定网路地址由32位2进制表示

      范围:0.0.0.0——255.255.255.255

      一个ip地址通常被写成四段十进制数,如175.152.154.022

      IP协议作用:为每一台计算机分配IP地址;确定哪些地址在同一个子网格

    5.mac地址

      每个网卡出厂时都被定制上唯一的mac地址,长度为48位2进制,通常由12位16进制数表示(前六位是厂商编号,后六位是流水线号)

    6.ARP协议(地址解析协议)

      通过IP地址找到MAC地址的过程,交换机只能看懂物理(mac)地址

      将消息(包含IP地址和MAC地址的ARP请求)广播到网络上的所有主机上,并接受返回信息,以此确定目标MAC地址

    7.路由器(跨局域网之间的通信-路由表)

      链接因特网中各个局域网,广域网的设备,它会根据信道情况自主选择和设定路由,以最佳路径,按顺序发送信号

      路由和交换机之间主要区别就是交换机发生在OSI模型第二层(数据连接层),而路由发生在第三层(网格层)

      网关IP,内置在路由器中

    路由器和交换机的区别:

      1:交换机:是负责内网里面的数据传递(arp协议)根据MAC地址寻址

       路由器:在网络层,路由器根据路由表,寻找该ip的网段

      2:路由器可以处理TCP/IP协议

      3:路由器可以把一个IP分配给很多个主机使用,这些主机对外只表现出一个IP。

       交换机可以把很多主机连起来,这些主机对外各有各的IP。

      4:交换机是做端口扩展的,也就是让局域网可以连进来更多的电脑。

       路由器是用来做网络连接,也就是;连接不同的网络

    8.局域网

      局域网(local area network),简称LAN,指在某一区域由多台计算机互联而成的计算机组,属于封闭型网络

      作用:可以实现文件管理,应用软件共享,打印机共享等

    9.子网掩码(跟网关有关,主要用来查看机器是否在同一局域网内)

      它是表示子网特征的一个参数,在形式上等同于IP地址,也是一个32位二进制数字,它的网络部分全是1,主机部分全是0

      如果已知网络部分是前24位,主机部分是后8位,那么子网络掩码就是11111111.11111111.11111111.00000000,写成十进制就是255.255.255.0

      知道了子网掩码,就能判断两个IP地址是都在同意各自网格

    比如,已知IP地址172.16.10.1和172.16.10.2的子网掩码都是255.255.255.0,请问它们是否在同一个子网络?两者与子网掩码分别进行AND运算,
    
    172.16.10.1:10101100.00010000.00001010.000000001
    255255.255.255.0:11111111.11111111.11111111.00000000
    AND运算得网络地址结果:10101100.00010000.00001010.000000001->172.16.10.0
     
    172.16.10.2:10101100.00010000.00001010.000000010
    255255.255.255.0:11111111.11111111.11111111.00000000
    AND运算得网络地址结果:10101100.00010000.00001010.000000001->172.16.10.0
    结果都是172.16.10.0,因此它们在同一个子网络。

    10.端口(port)(网络访问必须经过端口,用于应用程序之间的通信)

      端口范围:0-65535

      在同一台机器上,同一时刻每一个端口只能为一个运行中的程序提供服务

      只有用到互联网通信的程序才会用到端口的概念

      通过IP和端口,可以找到全世界唯一的一台电脑上的一个程序

    11.域名解析(DNS)

      在互联网上,所有的地址都是ip地址,现阶段主要是IPv4(比如:110.110.110.110)。

      但是这些ip地址太难记了,所以就出现了域名(比如http://baidu.com)。

      域名解析就是将域名,转换为ip地址的这样一种行为。

    12.tcp协议和udp协议 

    TCP协议:

      当应用程序希望通过 TCP 与另一个应用程序通信时,它会发送一个通信请求。这个请求必须被送到一个确切的地址。在双方“握手”之后,TCP 将在两个应用程序之间建立一个全双工 (full-duplex) 的通信。

      这个全双工的通信将占用两个计算机之间的通信线路,直到它被一方或双方关闭为止

      特点:可靠安全,面向连接,但是速度慢

      应用:web浏览器,电子邮件,文件传输程序等

    UDP协议:

      一种简单的面向数据包的运输层协议,它只是把应用程序传给IP层的消息发送出去,但无法保证对方可以接收

       特点:不可靠的,无连接的服务,面向数据包,但是速度快,且不会长期占用系统链接资源

      应用:域名系统 (DNS);视频流;IP语音(VoIP)

    13.TCP三次握手和四次挥手

      TCP三次握手:通过三次握手在两个服务之间建立了双相通信连接(全双工)

    • A向B发起建立连接请求:A——>B;
    • B收到A的发送信号,并且向A发送确认信息:B——>A;
    • A收到B的确认信号,并向B发送确认信号:A——>B

      第一次握手,B可以知道A能发送数据,第二次握手,A可以知道B能发送数据,根据第一次握手和第二次握手,A可以知道B能接收收据。第三次发送数据,B可以知道A能接收数据

      TCP四次挥手通过四次挥手断开两个服务之间的连接

    • A向B发起请求,表示A没有数据要发送了:A——>B;
    • B向A发送信号,确认A的断开请求请求:B——>A;
    • B向A发送信号,请求断开连接,表示B没有数据要发送了:B——>A;
    • A向B发送确认信号,同意断开:A——>B

      二次和三次挥手不能同时发送,因为此时A虽然不能再发送数据,但是还可以接收数据,B可能还有数据发送给A

    14.OSI七层协议(互联网协议)

      即互联网协议,互联网核心就是由一堆协议(标准)组成,所有计算机都是通过一套标准去接收和发送请求

      它根据功能可以分为osi七层或tipip五层或tipip四层 

      应用层:在Python程序内将信息编码

      传输层:在此确定当前服务端口和传输使用(TCP或UDP)协议

      网络层:确定IP地址

      数据连接层:获取对方MAC地址

      物理层:网卡,网线

     

    每层运行物理设备(对应硬件):

      物理层:与电信号的传输相关

      数据链路层:和MAC地址相关

      网路层:和IP地址相关           # 三层交换机:兼备交换和路由功能,既能识别IP地址,也能识别MAC地址

      传输层:和端口相关        

     

    每层运行常见协议:

     

    网络编程具体介绍链接:http://www.cnblogs.com/linhaifeng/articles/5937962.html#_label5

  • 相关阅读:
    归并排序
    将文件存储到数据库中(MySQL)
    JS实现日历控件选择后自动填充
    HDU 1358 Period KMP
    Adobe Flash Player已经终止一项可能不安全的操作,解决方案
    将文件从数据库(MySQL)中进行读取
    Ubuntu java开发环境配置
    硬盘结构和原理
    杭电 HDU 1242 Rescue
    mysql workbench建表时PK,NN,UQ,BIN,UN,ZF,AI
  • 原文地址:https://www.cnblogs.com/LearningOnline/p/8981190.html
Copyright © 2020-2023  润新知