zoukankan      html  css  js  c++  java
  • 网络基础-1

    三要素:

    IP, 端口号,网络协议:

    • IP: 可以唯一标识一个网卡,即在网络中唯一标识一台计算机
    • 端口号:唯一标识一台计算机上的一个程序
    • 网络协议:不同的计算机通过网络协议屏蔽网络差异,并实现数据交换

    IP地址

    1. IP 地址:(网络号)+主机号,一共32位
    • A类:("0"+7位)+24位
    • B类:("10"+14位)+16位
    • C类:("110"+21位)+8位
    • D类:("1110"+其他) :用做多点广播
    • E类:("1111"+其他):用于实验研究,不讨论它。
    • 一般用点分十进制表示一个32位二进制表示的IP地址
    • 主机号全为0的IP地址表示网络号,不标识计算机而是标识一个网络。主机号全为1表示广播(当前即IP地址代表着当前网络域的所有计算机)
    1. 私有IP(与公开IP相对):
    • 10.0.0.0~10.255.255.255
    • 172.16.0.0~172.31.255.255
    • 192.168.0.0~192.168.255.255
    • IP地址127.0.0.1~127.255.255.255用于回路测试
      如: 127.0.0.1可以代表本机IP地址,用http://127.0.0.1 就可以测试本机中配置的Web服务器
    1. 子网掩码:
    • 作用:把网络号和主机号分开,提取网络号
    • 特点:子网掩码和IP地址必须一起出现,彼此都离不开谁
    • 结构:“网络位”全为1,“主机位”全为0。因此,一个子网掩码与IP地址进行"按位与"操作(&),即可得到当前IP地址所在的网络号。
    • 例如, IP地址为“192.168.1.1”, 子网掩码为“255.255.255.0”。当前的网络号为192.168.1.0

    端口:

    • 唯一标识一台计算机的某一个服务(或者说程序)
    • 端口号是一个[0,65535]范围内的整数
    • 分为熟知端口和动态端口
    • 熟知端口([0,1023])比如http服务一般默认占用80端口,ftp服务默认占用21端口,熟知端口一般有固定用途。
    • 动态端口是[1024,65535],写用户程序一般申请动态端口,系统随机分配一个动态端口的端口号
    • windows下 netstat -an 查看端口状态

    网络协议

    1. TCP/IP协议族:(OSI7层协议我们只关心上面四层)
      image

    2. Socket:

    • 结构:(IP地址,端口号),唯一标识了一个服务
    • Socket编程本质上提供了一组使用TCP/IP协议族的API
    • 面向B/S模型,针对客户端和服务端各自提供了一组API。
    1. Socket(套接字)之间的连接可分为三个步骤:服务端监听,客户端请求,连接确认。

    创建Socket:

    • import socket
      socket.socket(AddressFamily, Type)
    • 创建并返回了一个socket对象

    参数说明:

    • Address Family:可以选择 AF_INET(用于Internet 进程间通信)或者AF_UNIX(用于同一台机器进程间通信) ,实际工作中常用AF_INET
    • Type:套接字类型,可以是 SOCK_STREAM(流式套接字,主要用于TCP 协议) 或者 SOCK_DGRAM(数据报套接字, 主要用于 UDP 协议)

    image

    1. UDP与TCP的对比
    • UDP无连接不可靠,TCP有连接可靠
    • UDP速度快,TCP速度慢
    • UDP资源消耗小,TCP消耗更多资源
    • UDP使用比TCP简单
    1. UDP的适用场景:多点广播和实时通信(要求速度快)
    • 视频
    • QQ
    • TFTP(简单文件传送)
    • SNMP(简单网络管理协议)
    • RIP(路由信息协议,如报告股票市场,航空信息)
    • DNS(域名解释)
    1. TCP:面向连接,可靠,但速度慢,消耗资源多,操作比
      UDP复杂,TCP连接基于“三次握手”:

    比如A和B要建立一个TCP连接,要发生:

    • A请求
    • B响应
    • A发送同步信息
  • 相关阅读:
    python爬虫练习5——新闻联播
    python爬虫练习4——腾讯视频评论提取
    python爬虫练习3——豆瓣电影
    python爬虫练习2——豆瓣读书
    python爬虫练习1——百度阅读榜
    微信小程序音频视频下载(fiddler抓包)
    4. Median of Two Sorted Arrays
    42.trapping-rain-water
    3.lengthOfLongestSubstring
    1.two sum
  • 原文地址:https://www.cnblogs.com/LS1314/p/8608878.html
Copyright © 2011-2022 走看看