- 3
- 0
- 约8.61千字
- 约 27页
- 2016-08-13 发布于重庆
- 举报
第二章套接口概念
第二章 套接口概念 套接口简介 域和地址簇 地址转换函数 利用套接口通信 2.1 套接口简介(1) 网间进程通信: 单机环境:不同进程用进程号(PID)唯一标识 网络环境:与协议、地址、端口有关 端口:进程通过系统调用与某端口建立连接后,传输层通过端口与进程通信。端口操作类似一般的I/O操作,可以用读写原语访问,端口号类似于文件描述符。不同协议(如TCP和UDP)可以有相同的端口号,不冲突。 地址:网络地址、主机地址、进程标识(端口号),一个完整的网间进程通信需要三元组(协议,本机地址,本机端口号)或五元组标识(协议,本机地址,本机端口号,远程主机,远程端口号) 网络字节顺序:不同计算机存放多字节值顺序不同,网络协议中需指定网络字节顺序。 2.1 套接口简介(2) Client/Server模式: 网间进程通信的主要模式是客户机/服务器模式。客户程序向服务程序发请求,服务程序接收来自客户程序的请求并处理,处理后把结果回送给客户,服务进程一般是先于客户请求启动的。这两个进程往往通过网络连接在不同机器上,进程间的通信使用网络编程。 Socket: 应用程序调用编程接口实现网络编程。Socket(套接字)可以在传输层、网际层和数据链路层上进行编程。 2.1 套接口简介(3) Socket的使用 插座的使用 2.1 套接口简介(4) Socket类型 Internet Socket(Internet地址) UNIX Socket (本地节点路径名) X.25 Socket(X.25地址) 只讲Internet Socket,常用类型有: 流套接字 SOCK_STREAM:基于TCP协议。 数据报套接字 SOCK_DGRAM :基于UDP协议。 原始套接字 SOCK_RAM :允许对较低层次协议(如IP、ICMP)直接访问。 本地套接字:通过socket技术可以实现不同主机上进程间通信,在单一主机上进程间的通信(IPC)也可用socket技术实现,用于移植远程客户/服务器程序到单一主机上。 2.1 套接口简介(5) 使用Socket 使用文件描述符 文件描述符是一个和打开的文件相关联的整数,这个文件可以是真正的文件、网络连接、管道、终端等。 Socket使用UNIX文件描述符和其他进程通信系统调用。 需要一套专用的函数来操作 socket() 创建套接口,返回一个文件描述符 connect()、accept()等连接 send()、recv()、read()、write()等读写 close() 等关闭套接口 2.2 域和地址族(1) 域 网络通信需要套接口地址标识自己 创建套接口时使用 int socket(int domain,int type,int protocol); AF_INET域使用的数据结构 (地址族) 通用套接口地址(只是模型) sockaddr Internet(IPv4)套接口地址(AF_INET域) sockaddr_in 2.2 域和地址簇(2) Socket用到的数据结构(P23) #include sys/socket.h (1)存储地址和端口信息的sockaddr struct sockaddr { unsigned short sa_family; /*Internet地址簇,AF_INET*/ char sa_data[14]; /*目标地址和端口信息*/ }; 2.2 域和地址簇(2) (2)INET协议簇地址结构sockaddr_in,便于访问 struct sockaddr_in { unsigned short sin_family; /*取AF_INET*/ unsigned short sin_port; /*端口号,网络字节顺序*/ struct in_addr sin_addr; /*IP地址,网络字节顺序*/ unsigned char sin_zero[8]; /*使用bzero()或memset()全部置0,*/ }; 注:指向sockaddr_in 的指针和指向sockaddr的指针可互换使用。 (3)32位IPv4地址结构in_addr struct in_addr { unsigned long s_addr;}; 2.2 域和地址簇(3) 说明: 在书中或系统
您可能关注的文档
- 电工学考试试题2.doc
- 第二单元认识运动把握规律高中政治必修四课件.ppt
- 第二季度职工思想动态分析报告.doc
- 陕西省宝鸡市金台区二模数学(文)试题.doc
- 电工学考试试题原题.doc
- 电工学试题(08高数12)李家伟.doc
- 电工学试卷2007机械学院A卷答案.doc
- 电工学试题1答案.doc
- 电工学知识点测试题.doc
- 电工学试题1答案(本一本二64学时).doc
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 2020年北京中考英语试题及答案.pdf VIP
- 贷款结清证明.docx VIP
- 村两委换届模拟推演方案.docx VIP
- 有机化学——杂环化合物和生物碱.ppt VIP
- 2025年中考数学一模试卷(福建卷)含答案解析.pdf VIP
- 2025年菏泽职业学院单招语文测试试卷.docx VIP
- 三雄极光-商用照明项目专业产品手册(2023-2024).pdf VIP
- 杜邦dupont-FilmTec™Fortilife™ XC120 超高压反渗透膜元件-120bar.pdf
- 高处作业安全培训PPT课件.ppt VIP
- dwc_ble50combophy_tsmc40_databook数据手册解析.pdf VIP
原创力文档

文档评论(0)