संभव डुप्लिकेट:
How do you throttle the bandwidth of a socket connection in C?मैं सी में सॉकेट गति को कैसे सीमित करूं?
मैं एक यूनिक्स पर्यावरण के लिए सी में एक सरल FTP सर्वर लिख रहा हूँ। सर्वर की सुविधा के रूप में, मैं किसी उपयोगकर्ता की अपलोड/डाउनलोड गति को सीमित करना चाहता हूं।
क्या कोई पुस्तकालय कार्य सीधे इस समस्या को हल करता है?
यदि नहीं, तो उत्पादन एफ़टीपी सर्वर में उपयोग किए गए एल्गोरिदम क्या है? मेरे पास एक बहुत ही निष्क्रिय समाधान है: गणना करें कि कितने बाइट्स एक दूसरे में भेजने के लिए कहते हैं,
x
,write(x)
याread(x)
, और फिरsleep(1)
कहें।
एक बेहतर समाधान होना चाहिए। कोड नमूने होने पर भी बेहतर होगा।
स्पष्ट होने के लिए, मैं मैक ओएस एक्स का उपयोग कर रहा हूं, लेकिन मेरी इच्छा है कि यह उबंटू या कुछ लिनक्स के तहत भी चलाया जा सके।
* "सर्वर की एक विशेषता के रूप में, मैं एक उपयोगकर्ता के अपलोड/डाउनलोड की गति को सीमित करना चाहते हैं" * - यही कारण है कि एक भयानक सुविधा –
की तरह लगता है आप किस ओएस पर हैं? – jman
यह प्रश्न मदद कर सकता है - http://stackoverflow.com/questions/235762/how-do-you-throttle-the-bandwidth-of-a-socket-connection-in-c –