端口,OSI7层模型,TCP的三次握手和四次挥手,进度条

1.端口:

  端口是为了将同一个电脑上的不同程序进行隔离

  IP是找电脑,端口是找电脑上的程序

  MySQL是一个软件,帮助我们在硬盘上进行文件操作,默认端口是3306

  Redis是一个软件,帮助我们在内存里进行数据操作,默认端口是6379

  http网站默认端口是80

  https网站默认端口是443

  端口范围:1-65535,1-1024不能用

2.OSI7层模型

  7层:

    应用层:使用软件

    表示层:看到的数据,如图片,视频

    会话层:保持登录或链接状态

    socket模块:

    传输层:TCP/UDP

    网络层:TP

    数据链路层:mac

    物理层:将数据转换成电信号发送

  5层:

    应用层:应用层,表示层,会话层

    传输层

    网络层

    数据链路层

    物理层

  4层:

    应用层:应用层,表示层,会话层

    传输层

    网络层

    物理层:物理层,数据链路层

3.TCP三次握手/四次挥手

  socket客户端向服务端发起连接请求:三次握手

    client.connect((...))2次

    客户端->服务端

    client.send("发送数据")1次

    收发数据

  客户端和服务端断开连接:四次挥手

    client.close()或conn.close()

  断开连接时,反应到代码上:抛出异常/发送空内容

4.进度条

1 import time
2 
3 def func(size,total_size):
4     val = int(size/total_size*100)
5     time.sleep(1)
6     print("
%s%%|%s"%(val,"*"*val),end="")
7 
8 for i in range(101):
9     func(i,100)