高分请大家来谈谈socket API,来者有分

zeng_xiangyang 2003-11-19 05:21:08
请大家谈谈现在socket API的缺点,对它有什么看法,有什么改进方法。大家可从各个角度谈谈,想说什么就说什么!谢谢大家的参与!!!
...全文
97 32 打赏 收藏 转发到动态 举报
写回复
用AI写文章
32 条回复
切换为时间正序
请发表友善的回复…
发表回复
hujun4u 2003-11-26
  • 打赏
  • 举报
回复
socket API我觉得基本够用了把
自己再封装一下就可
uestcwahaha 2003-11-26
  • 打赏
  • 举报
回复
up
delphimm 2003-11-26
  • 打赏
  • 举报
回复
to 牛牛

richard steven得unix网络编程第一卷里面就开发了很多与协议无关的函数啊
rock1981 2003-11-26
  • 打赏
  • 举报
回复
gz
WilliamXiaoLiang 2003-11-25
  • 打赏
  • 举报
回复
请教楼上的大虾们:
买了一份68¥的Red Hat Linux9操作系统,组件选择的是everything安装,安装的server,只有这个操作系统可以进行编程吗?可以从事哪些方面的编程呢?
shantian 2003-11-25
  • 打赏
  • 举报
回复
gao shou ya
liuty2006 2003-11-24
  • 打赏
  • 举报
回复
mk
zeng_xiangyang 2003-11-23
  • 打赏
  • 举报
回复
谢谢大家,欢迎大家谈谈: fierygnu(va_list) 说得是有道理的。欢迎大家再谈谈
zeng_xiangyang 2003-11-22
  • 打赏
  • 举报
回复
With the increase in available network bandwidth and reduction in network latency, more emphasis hasbeen placed on end-host QoS to provide quality of service guarantees for distributed real-time applications,such as video streaming servers, video conferencing applications, and VoIP applications. End-host QoS
requires support from the underlying operating system (OS) in the form of network schedulers and traffic controllers. GNU/Linux supports a variety of network schedulers for the provision of end-host QoS,but no easy-to-use API is provided between applications and system-level tra±c controllers. Moreover,existing APIs lack the ability to link QoS attributes with stream or datagram sockets and to associate QoS information with individual packets allowing sophisticated network schedulers to make scheduling decisions based on such information or to link di®erent streams such that their QoS management is coordinated. We propose an extension to the standard Berkeley socket interface that enables applications
to easily create and manage connections with QoS requirements. This new API -called QSockets includes per-socket traffic classication that allows the application developer to link a socket connection with a scheduler so that all data going out on this socket is scheduled accordingly. We further allow
an application to pass packet-specific parameters to the scheduler for fine-grained scheduler control.
fierygnu 2003-11-22
  • 打赏
  • 举报
回复
QoS是要底层网络设备支持的,是一个网络资源管理的问题,不是socket API应该关心的问题。
haothinking 2003-11-22
  • 打赏
  • 举报
回复
那楼主说出来大家共同学习学习呀!
共同探讨,共同进步!
fierygnu 2003-11-22
  • 打赏
  • 举报
回复
QoS是全网的概念,这里的QSocket是对本机的网络流量进行分类、调度,只是一个操作系统API接口,类似现在的setsockopt要做的事情。但如果网络设备不提供QoS能力,应用对带宽、时延、抖动、拥塞等指标的要求仍然无法满足。而且,从网络管理的角度讲,由应用指定报文的优先级是不能接受的。所以QSocket能实现的只是本机所有的网络带宽等资源在本机应用之间的分配,不能真正满足应用的需求。
fierygnu 2003-11-21
  • 打赏
  • 举报
回复
网络是分层的。
zeng_xiangyang 2003-11-21
  • 打赏
  • 举报
回复
大家的意见都很中肯。我并不是想去封装它们,也不是想去改写它们。我们现在有个项目,新型网络体系结构(名字叫基于服务元的新型网络体系结构),在linux下实现,现在在做第一个版本。当然啦,我们肯定要自己写socket API啦。我是做socket API这部分的,我并不是凭空想象出这个题目来的。我只是想要大家提点意见,希望对我的思路有所帮助。
我先来提一点啊。比如,现在的操作系统网络部分提供了socket调度器和拥塞控制功能,但却没有提供相应的socket API让我们利用socket调度器和拥塞控制功能,我们不能实现端系统级的应用程序的QoS.请大家多多指教!!!非常感谢大家的参与!!!
clqwhm 2003-11-21
  • 打赏
  • 举报
回复
正在使用linux,还在学习阶段。
fierygnu 2003-11-21
  • 打赏
  • 举报
回复
现在的API基本够了,LINUX做了些扩充,如KEEPALIVE、PF_PACKET等,也比较好。至于C++版本,自己封装的意义也不大,可以用ACE。
要重写不算什么浪费时间,重要的是重写的目的。楼主有这样的问题,目的恐怕不是很简单。如果想超越socket,需要付出的很多很多。
ruancsdn 2003-11-21
  • 打赏
  • 举报
回复
用过,就是觉得挺麻烦的,总是将某些结构记混!
Gooing 2003-11-21
  • 打赏
  • 举报
回复
认认真真仔仔细细完完全全好好地听!
broadoceans 2003-11-21
  • 打赏
  • 举报
回复
socket 是工作在tcp/ip层的api,适合于编写各种各样的网络应用程序。像traceroute,ping等都是用它编写出来的。其特点是功能比较强大,性能比较好。缺点是相对比较麻烦。许多黑客程序也是用它来编写的。如果想工作在数据链路层,则需要使用pcap库。
zeng_xiangyang 2003-11-21
  • 打赏
  • 举报
回复
看来还是很多人不了解(不要骂我啊)Qsocket,即QoS套接字的思想。
加载更多回复(12)

23,121

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧