网络编程-基础(一)

https://www.cnblogs.com/mys6/p/10587673.html(网络编程) 

https://www.cnblogs.com/mys6/p/10745803.html(计算机网络)

# python基础

# 网络编程 _ 概念 4天
# 什么是网络 网络的基础概念 *****
# socket
# TCP
# UDP
# 并发编程 _ 概念
# 一天


# qq 微信 飞秋 网游 微博 歪歪 _基于应用的网络程序
# 百度 微博 知乎 博客园 网易 _基于浏览器的网络程序

# 网络编程中的 - C/S架构
# c client 客户端
# s server 服务端
# 网络编程中的 - B/S架构
# b broser 浏览器
# s server 服务端
# 不需要额外的安装客户端了,只需要一个网址就可以访问
# 轻量级 - 使用成本低
# B/S架构是C/S架构的一种特殊形式
# 手机上 : 浏览器 app

# 两个py程序想要通信
# 写文件
# 在不同机器上的两个py程序之间想要通信
# 网络

# 网络的发展史
# 网卡网口
# 两台机器之间 插上网线就可以通信
# 网卡上 - mac地址
# ip地址
# 是4个点分十进制 - ipv4协议
# 0.0.0.0 - 255.255.255.255
# 127.0.0.1 本机
# 内网字段 192.168.****
# 10.****
# 172.***
# 6个点分十进制 - ipv6协议
# 0.0.0.0.0.0 - 255.255.255.255.255.255
# 交换机
# 广播
# 单播


# 组播
# arp协议 : 通过IP地址获取某一台机器的mac地址

    # 广播风暴(连一台路由器会产生)
    # 网关的概念-局域网中的机器想要访问局域网外的机器,需要通过网关访问
#
# 子网掩码
# 子网掩码 和 ip地址进行 按位 与 运算 就能得出一个机器所在的网段
# 192.168.21.36
# 11000000.10101000.00010101.00100100 》》》

# 255.255.255.0
# 11111111.11111111.11111111.00000000 》》》

# 11000000.10101000.00010101.00000000 》》》(与运算结果,得出下面的网段)
# 192.168.21.0 网段
# 网关地址 : 整个局域网中的机器能沟通过网关ip与外界通信
# 网段 : 子网掩码 和 ip地址进行 按位 与 运算(可以看出另外计算机是不是和我在同一局域网)


# 端口:找到的程序
# 在计算机上 每一个需要网络通信的程序 都会开一个端口
# 在同一时间只会有一个程序占用一个端口
# 不可能在同一时间 在同一个计算机上有两个程序占用一个端口
# 端口 : 0-65535
# 8000-酷狗音乐 22-ssh 3306-mysql
# python 网络应用 8000
# ip地址+端口号 : 在全网找到唯一的一台机器+唯一的应用
# 我们选择端口 : 一般8000之后
# IP ---确定唯一一台机器
# 端口----确定唯一的一个程序
# ip地址+端口号 : 找到唯一的一台机器+唯一的一个程序



计算机之间的通信(TCP和UDP)
# tcp协议
# 全双工的通信协议
# 一旦连接建立起来,那么连接两端的机器能够随意互相通信
# 面向连接的通信方式
# 数据安全不容易丢失
# 建立连接的 三次握手 ******(一直连着)
第一次客服端向服务端发起请求
第二次服务器回应并询问
第三次客服端回应询问

# 断开连接的 四次挥手 ******(客户端和服务端都可以发起断开)
#TCP相当于打电话,必须双方接通才能通话
#UDP相当于发短信,短信我发出去了,至于你收没收到、回不回不管我的事 ,QQ用的UDP,之所以能检测消息发送情况,不是基于协议,而是基于程序本身检测的



互联网协议

 

原文地址:https://www.cnblogs.com/mys6/p/10745890.html