网络协议

654 阅读6分钟

科来《网络通讯协议图2023版》.pdf

www.colasoft.com.cn/wp-content/…

image.png

image.png

image.png

image.png

image.png

image.png

image.png

WebRTC

是一个支持网页浏览器进行实时语音对话或视频对话的 API。它于 2023年07月14日 6 月 1 日开源并在 Google、Mozilla、Opera 支持下被纳入万维网联盟的 W3C 推荐标准。目前主要应用于视频会议和连麦中。

优点:W3C 标准,主流浏览器支持程度高,不仅有Google 在背后支撑,而且在各平台都有参考实现。底层基于 SRTP 和 UDP,弱网情况优化空间大且可以实现点对点通信,通信双方延时低。 缺点:传统 CDN 没有提供类似的服务。

RTMP

Real Time Messaging Protocol ,即实时消息协议 即实时消息传输协议,该协议基于 TCP是一个协议族。其中包括 RTMP 基本协议及 RTMPT/RTMPS/RTMPE 等多种变种。RTMP 是一种设计用来进行实时数据通信的网络协议,主要用来在 Flash/AIR 平台和支持 RTMP 协议的流媒体/交互服务器之间进行音视频和数据通信。支持该协议的软件包括 Adobe Media Server/Ultrant Media Server/red5 等。RTMP 是目前主流的流媒体传输协议,广泛用于直播领域,可以说市面上绝大多数的直播产品都采用了这个协议。

优点:CDN 支持良好,一般主流的 CDN 厂商都支持且协议简单,在各平台上实现也很容易。

缺点:基于 TCP ,传输成本高,在弱网环境丢包率高的情况下问题显著且不支持浏览器推送。

SMB (server message block) 网络协议 服务器信息块

SMB 定义

SMB(全称是Server Message Block)是一个网络协议名,它能被用于Web连接和客户端与服务器之间的信息沟通。SMB最初是IBM的贝瑞·费根鲍姆(Barry Feigenbaum)研制的,其目的是将DOS操作系统中的本地文件接口“中断13”改造为网络文件系统

Samba搭建windows和linux共享磁盘

  • Linux系统与Windows系统之间共享文件资源,小文件可以使用lrzsz,大文件可以使用samba。 Samba是在LinuxUNIX系统上实现

  • Samba的一个免费软件,由服务器及客户端程序构成。 1、yum安装samba

yum install samba

2、修改配置文件,Samba服务程序的主配置文件 /etc/samba/smb.conf。

# See smb.conf.example for a more detailed config file or
# read the smb.conf manpage.
# Run 'testparm' to verify the config is correct after
# you modified it.

[global]                          #全局设置
    workgroup = workgroup         #工作组名称
    security = user               #安全验证方式,共有4种
        map to guest = bad user   #目录匿名访问

    passdb backend = tdbsam

    printing = cups
    printcap name = cups
    load printers = yes
    cups options = raw

[homes]
    comment = Home Directories
    valid users = %S, %D%w%S
    browseable = No
    read only = No
    inherit acls = Yes

[printers]
    comment = All Printers
    path = /var/tmp
    printable = Yes
    create mask = 0600
    browseable = No

[print$]
    comment = Printer Drivers
    path = /var/lib/samba/drivers
    write list = @printadmin root
    force group = @printadmin
    create mask = 0664
    directory mask = 0775
[public]                        #共享名称
    comment = cream mint        #提示信息,任意写
    path = /home/creammint      #共享目录
    public = yes                #允许“所有人可见”
    read only = no              #允许写入操作

security = share | user | server | domain #安全验证的方式,总共有4种

  1. share: 安全级别模式:客户端登录samba 服务器,不需要输入用户名和密码就可以浏览samba 服务器的资源,适用于公共的共享资源,安全性差,需要配合其他权限设置,保证samba 服务器的安全性。
  2. user: 客户端登录samba 服务器,需要提×××法帐号和密码,经过服务器验证才可以访问共享资源,服务器默认为此级别模式。
  3. server:使用独立的远程主机验证来访主机提供的口令(集中管理账户)
  4. domain:使用域控制器进行身份验证

3、创建Samba用户

上面设置的是用户口令认证模式(user);也是默认的模式,需要创建访问共享资源的账户信息。Samba服务程序的用户账号必须在当前系统中已经存在。

[root@yunwei-test ~]# useradd samba
[root@yunwei-test ~]# id samba

pdbedit命令用于管理SMB服务程序的账户信息,格式为“pdbedit [参数] 账户”

  • -a 用户名 #建立Samba用户

  • -x 用户名 #删除Samba用户

  • -L #列出用户列表

  • -Lv #列出用户详细信息的列表

4、 创建共享目录,启动smb服务

[root@localhost ~]# mkdir /home/creammint  #创建共享目录
[root@localhost ~]# chown -R   samba:samba /home/creammint
[root@localhost ~]# systemctl start smb  #启动smb服务
[root@localhost ~]# systemctl enable smb  #开机自启动

5、Windows访问共享目录,windows键+R打开运行窗口,输入Samba服务器的IP地址。 6、输入pdbedit命令设置的用户名和密码登录。 在这里插入图片描述 就可以登录到共享界面中了,实现windows与linux的共享。

Samba服务配置

配置文件

/etc/samba/smb.conf #samba的主要配置文件
/usr/bin/smbclient #客户端功能
/usr/bin/smbstatus #服务器功能
/etc/samba/lmhosts #早期的 NetBIOS name

主配置文件由两部分组成: Global Settings :与Samba服务整体运行环境有关的选项,它的设置是针对所有共享资源的 Share Definition:针对共享目录个别的设置,只对当前的共享资源起作用

/etc/samba/smb.conf 文件的开头部分为samba 配置简介,告诉我们smb.conf 文件的作用及相关信息。还有以“;”开头,这些都是samba 配置的格式范例,默认是不生效滴,可以通过去掉前面的“;”并加以修改来设置想使用的功能。

pdbedit使用

pdbedit用于在samba服务器中管理用户,常见用法:

pdbedit -a username #新建Samba账户。
pdbedit -x username #删除Samba账户。
pdbedit -L #列出Samba用户列表,读取passdb.tdb数据库文件。
pdbedit -Lv #列出Samba用户列表详细信息。
pdbedit -c “[D]” -u username #暂停该Samba用户账号。
pdbedit -c “[]” -u username #恢复该Samba用户账号。

也可以使用"smbpasswd"命令添加和管理用户。

[root@localhost ~]# cd /home/creammint   # 进入到这个文件下
[root@localhost creammint]# chmod 777 pic   # 执行以下命令

chmod 改变已有目录或文件的权限

chmod 设置已有目录或文件的权限。可以为指定范围的用户添加或删除权限。

权限范围的表示法如下:

u:User,即文件或目录的拥有者;

g:Group,即文件或目录的所属群组;

o:Other,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围;

a:All,即全部的用户,包含拥有者,所属群组以及其他用户;

权限设置如下:

r:读取权限,数字代号为“4”;

w:写入权限,数字代号为“2”;

x:执行或切换权限,数字代号为“1”;

-:不具任何权限,数字代号为“0”;

s:特殊功能说明:变更文件或目录的权限。

NAS

FTP

NFS

WebDAV

(Web-based Distributed Authoring and Versioning) 一种基于 HTTP 1.1 协议的 通信协议。