বৃহত আরটিটি-র উপরে 100 এমবিপিএস সার্ভারের চেয়ে 1 জিবিপিএস সার্ভার থেকে লোয়ার টিসিপি থ্রুটপুট


9

সিঙ্গাপুর, লন্ডন এবং লস অ্যাঞ্জেলেস - বিশ্বের কয়েকটি প্রধান স্থানে আমরা অবকাঠামো বিতরণ করেছি। যে কোনও দুটি জায়গার মধ্যে আরটিটি 150 মিটারের বেশি।

আমরা সম্প্রতি 1 জিবিপিএস লিঙ্কগুলি ব্যবহার করার জন্য সমস্ত সার্ভারগুলিকে আপগ্রেড করেছি (100 এমবিপিএস থেকে)। আমরা বিভিন্ন স্থানে সার্ভারগুলির মধ্যে কয়েকটি টিসিপি-ভিত্তিক পরীক্ষা চালিয়ে যাচ্ছি এবং কিছু বিস্ময়কর ফলাফল দেখেছি। এই ফলাফলগুলি সম্পূর্ণ পুনরাবৃত্তিযোগ্য।

  1. লস অ্যাঞ্জেলেস (100 এমবিপিএস) থেকে লন্ডন (100 এমবিপিএস): M 96 এমবিপিএস থ্রুপুট
  2. লস অ্যাঞ্জেলেস (100 এমবিপিএস) লন্ডন (1 জিবিপিএস): M 96 এমবিপিএস থ্রুপুট
  3. লস অ্যাঞ্জেলেস (1 জিবিপিএস ) থেকে লন্ডন (100 এমবিপিএস ): 10-40 এমবিপিএস থ্রুপুট (অস্থির)
  4. লস অ্যাঞ্জেলেস (1 জিবিপিএস ) থেকে লন্ডন (1 জিবিপিএস ): 10-40 এমবিপিএস থ্রুপুট (অস্থির)
  5. লস অ্যাঞ্জেলেস (1 জিবিপিএস) থেকে লস অ্যাঞ্জেলেস (1 জিবিপিএস):> 900 এমবিপিএস থ্রুপুট

দেখা যাচ্ছে যে প্রেরক যখনই 1 জিবিপিএস চালাচ্ছেন, দীর্ঘ লিঙ্কগুলিতে আমাদের থ্রুপুট খুব তাৎপর্য সহ্য করে।

পূর্ববর্তী পরীক্ষার পদ্ধতিটি অত্যন্ত সহজ - আমি কেবলমাত্র সার্ভার থেকে 1 জিবি বাইনারি ডাউনলোড করতে সিআরএল ব্যবহার করছি (সুতরাং উপরের ক্ষেত্রে, সিআরএল ক্লায়েন্ট লন্ডন সার্ভারে চলে এবং এলএ থেকে ডাউনলোড করে, যাতে এলএ প্রেরক হয়) । এটি অবশ্যই একক টিসিপি সংযোগ ব্যবহার করছে।

আইপিএফ ব্যবহার করে ইউডিপিতে একই পরীক্ষাগুলির পুনরাবৃত্তি করা, সমস্যাটি অদৃশ্য হয়ে যায়!

  1. লস অ্যাঞ্জেলেস (100 এমবিপিএস) থেকে লন্ডন (100 এমবিপিএস): M 96 এমবিপিএস থ্রুপুট
  2. লস অ্যাঞ্জেলেস (100 এমবিপিএস) লন্ডন (1 জিবিপিএস): M 96 এমবিপিএস থ্রুপুট
  3. লস অ্যাঞ্জেলেস (1 জিবিপিএস) থেকে লন্ডন (100 এমবিপিএস): M 96 এমবিপিএস থ্রুপুট
  4. লস অ্যাঞ্জেলেস (1 জিবিপিএস) থেকে লন্ডন (1 জিবিপিএস):> 250 এমবিপিএস থ্রুপুট

এটি আমার চোখে কিছু টিসিপি বা এনআইসি / পোর্ট কনফিগারেশন ইস্যুতে বর্গক্ষেত্র নির্দেশ করে।

উভয় সার্ভার টিসিপি কিউবিক সহ সেন্টোস 6.x চলছে running উভয়েরই 8MB সর্বাধিক টিসিপি উইন্ডোজ প্রেরণ এবং গ্রহণ করে এবং টিসিপি টাইমস্ট্যাম্প এবং নির্বাচনী স্বীকৃতি সক্ষম করেছে। সমস্ত টেস্ট ক্ষেত্রে একই টিসিপি কনফিগারেশন ব্যবহৃত হয়। সম্পূর্ণ টিসিপি কনফিগারেশন নীচে রয়েছে:

net.core.somaxconn = 128
net.core.xfrm_aevent_etime = 10
net.core.xfrm_aevent_rseqth = 2
net.core.xfrm_larval_drop = 1
net.core.xfrm_acq_expires = 30
net.core.wmem_max = 8388608
net.core.rmem_max = 8388608
net.core.wmem_default = 131072
net.core.rmem_default = 131072
net.core.dev_weight = 64
net.core.netdev_max_backlog = 1000
net.core.message_cost = 5
net.core.message_burst = 10
net.core.optmem_max = 20480
net.core.rps_sock_flow_entries = 0
net.core.netdev_budget = 300
net.core.warnings = 1
net.ipv4.tcp_timestamps = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_sack = 1
net.ipv4.tcp_retrans_collapse = 1
net.ipv4.tcp_syn_retries = 5
net.ipv4.tcp_synack_retries = 5
net.ipv4.tcp_max_orphans = 262144
net.ipv4.tcp_max_tw_buckets = 262144
net.ipv4.tcp_keepalive_time = 7200
net.ipv4.tcp_keepalive_probes = 9
net.ipv4.tcp_keepalive_intvl = 75
net.ipv4.tcp_retries1 = 3
net.ipv4.tcp_retries2 = 15
net.ipv4.tcp_fin_timeout = 60
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_recycle = 0
net.ipv4.tcp_abort_on_overflow = 0
net.ipv4.tcp_stdurg = 0
net.ipv4.tcp_rfc1337 = 0
net.ipv4.tcp_max_syn_backlog = 2048
net.ipv4.tcp_orphan_retries = 0
net.ipv4.tcp_fack = 1
net.ipv4.tcp_reordering = 3
net.ipv4.tcp_ecn = 2
net.ipv4.tcp_dsack = 1
net.ipv4.tcp_mem = 1528512      2038016 3057024
net.ipv4.tcp_wmem = 4096        131072  8388608
net.ipv4.tcp_rmem = 4096        131072  8388608
net.ipv4.tcp_app_win = 31
net.ipv4.tcp_adv_win_scale = 2
net.ipv4.tcp_tw_reuse = 0
net.ipv4.tcp_frto = 2
net.ipv4.tcp_frto_response = 0
net.ipv4.tcp_low_latency = 0
net.ipv4.tcp_no_metrics_save = 0
net.ipv4.tcp_moderate_rcvbuf = 1
net.ipv4.tcp_tso_win_divisor = 3
net.ipv4.tcp_congestion_control = cubic
net.ipv4.tcp_abc = 0
net.ipv4.tcp_mtu_probing = 0
net.ipv4.tcp_base_mss = 512
net.ipv4.tcp_workaround_signed_windows = 0
net.ipv4.tcp_dma_copybreak = 4096
net.ipv4.tcp_slow_start_after_idle = 1
net.ipv4.tcp_available_congestion_control = cubic reno
net.ipv4.tcp_allowed_congestion_control = cubic reno
net.ipv4.tcp_max_ssthresh = 0
net.ipv4.tcp_thin_linear_timeouts = 0
net.ipv4.tcp_thin_dupack = 0

কয়েকটি পরীক্ষার ক্ষেত্রে ওয়্যারশার্ক আইও গ্রাফের কয়েকটি চিত্র সংযুক্ত করা হয়েছে (দুঃখিত, আমি সরাসরি চিত্রগুলি পোস্ট করতে পারি না):

পরীক্ষার কেস 1 (100 এমবিপিএস -> 100 এমবিপিএস) - দুর্দান্ত মসৃণ স্থানান্তর। ক্যাপচারে কোনও ক্ষয়ক্ষতি নেই। - http://103.imagebam.com/download/dyNftIGh-1iCFbjfMFvBQw/25498/254976014/100m.png

পরীক্ষার কেস 3 (1 জিবিপিএস -> 100 এমবিপিএস ) - ভোটেলে ট্রান্সফার, কোনও গতি পেতে অনেক সময় নেয় - কখনও 100 এমবিপিএসের কাছে যায় না। তবুও কোনও ক্ষতি / পুনর্বাসনে বন্দী! - http://101.imagebam.com/download/KMYXHrLmN6l0Z4KbUYEZnA/25498/254976007/1g.png

সুতরাং সংক্ষেপে, যখন 1 জিবিপিএস সংযোগের সাথে একটি দীর্ঘ লিঙ্ক ব্যবহৃত হয়, আমরা যখন 100 এমবিপিএস সংযোগ ব্যবহার করি তখন তার চেয়ে অনেক কম টিসিপি থ্রুটপুট পাই।

আমি কোনও টিসিপি বিশেষজ্ঞের কাছ থেকে কিছু পয়েন্টারকে খুব প্রশংসা করব!

ধন্যবাদ!

আপডেট (2013-05-29):

আমরা পরীক্ষার কেস # 4 উপরে সমস্যাটি সমাধান করেছি (1 জিবিপিএস প্রেরক, 1 জিবিপিএস রিসিভার, একটি বৃহত্তর আরটিটি-র উপরে)। স্থানান্তর শুরুর কয়েক সেকেন্ডের মধ্যে আমরা এখন 970 এমবিপিএস হিট করতে পারি। সমস্যাটি হোস্টিং সরবরাহকারীর সাথে ব্যবহৃত একটি স্যুইচ বলে মনে হচ্ছে । অন্য কোনওটিতে চলে যাওয়া সমাধান করে।

তবে, পরীক্ষার কেস # 3 বেশিরভাগ ক্ষেত্রেই সমস্যা থেকে যায়। যদি আমাদের কাছে রিসিভারটি 100 এমবিপিএস এবং প্রেরক 1 জিবিপিএসে চলমান থাকে, তবে আমরা রিসিভারটি 100 এমবিপিএসে পৌঁছানোর জন্য প্রায় ২-৩ মিনিটের জন্য অপেক্ষা করতে দেখি (তবে এটি এখন আগের তুলনায় সম্পূর্ণ হারে পৌঁছায়)। যত তাড়াতাড়ি আমরা প্রেরককে 100 এমবিপিএসে নামিয়ে আনব বা রিসিভারটি 1 জিবিপিএসে বাড়িয়ে দেব, তারপরে সমস্যাটি অদৃশ্য হয়ে যায় এবং আমরা এক বা দ্বিতীয় মধ্যে পুরো গতিতে র‌্যাম্প করতে পারি।

অন্তর্নিহিত কারণ হ'ল স্থানান্তর শুরুর খুব শীঘ্রই আমরা অবশ্যই ক্ষতিগুলি দেখছি। তবে ধীর-সূচনাটি কীভাবে কাজ করে তা আমার বোঝার সাথে এটি মিলছে না; ইন্টারফেসের গতিতে এর কোনও প্রভাব থাকতে হবে না, কারণ এটি রিসিভারের এসি দ্বারা পরিচালিত হওয়া উচিত।

পরামর্শ কৃতজ্ঞভাবে প্রাপ্ত হয়েছে দয়া করে! আমি যদি এখানে কোনও অনুদানের প্রস্তাব দিতে পারি, আমি করতাম!


1
আপনি কি দু'দিক থেকে এনআইসিতে টিসিপি অফলোড ব্যবহার করছেন? আপনার টিসিপি অফলোডের ব্যবহার কি 100 এম থেকে 1 জি এনআইসিতে পরিবর্তিত হয়? যদি এটি পরীক্ষার যে কোনও ক্ষেত্রে ব্যবহৃত হয়, তবে 100M এনআইসিতে টিসিপি অফলোড ইঞ্জিনটি কীভাবে 1 জি যোগাযোগ সম্পাদন করে getting হ্যান্ড-ওয়েভ কেবলমাত্র TOE আনার জন্য)
ফ্লাইস লাইক্যাব্রিক

ভাল প্রশ্ন! দুটি প্রান্তে টিসিপি সেগমেন্টেশন অফলোড অক্ষম করা আছে। জেনেরিক সেগমেন্টেশন অফলোড উভয় প্রান্তে সক্ষম করা হয়েছে। আমি এটি টিএসও সক্ষম করেও পুনরাবৃত্তি করেছি এবং এটি কোনও লক্ষণীয় তাত্পর্য তৈরি করে নি।
স্যাম

কমপক্ষে 100
মি

পরামর্শের জন্য ধন্যবাদ, তবে কোনও আনন্দ নেই - উভয় পক্ষেই জিএসও সহ বা একই ফলাফল।
স্যাম

150 এমএম + এ 1 জিবিপিএস 18 এমবি'রও বেশি, একটি খুব বড় ব্যান্ডউইথ বিলম্ব পণ্য দেয়। আপনি যদি আপনার সকেট বাফারকে ঘায়েল করেন তবে কি হবে? tcp_*mem = 4096 1048576 33554432আপনি যে 1 জিবিপি লিঙ্কগুলিতে জাম্বো ফ্রেমগুলি সক্ষম করেন নি? এটি কোথাও ওভারহেডের টুকরো টুকরো করার কারণ হতে পারে।
সুপ্রজামী

উত্তর:


1

মূল সমস্যাটি বড় WAN দেরি। এটি এলোমেলো প্যাকেট হারিয়ে গেলে এটি খুব খারাপ হবে।

1, tcp_mem আরও মেমরি বরাদ্দ করতে বড় সেট করতে হবে। উদাহরণস্বরূপ, নেট.ipv4.tcp_mem = 4643328 6191104 9286656 হিসাবে সেট করুন

২, আপনি প্রায় কয়েক মিনিটের জন্য ওয়্যারশার্ক / টিসিপিডম্পের মাধ্যমে প্যাকেটগুলি ক্যাপচার করতে পারেন তারপরে এলোমেলো প্যাকেটটি হারিয়ে গেছে কিনা তা এনালাইসাইজ করতে পারেন। আপনি চাইলে প্যাকেট ফাইলও আপলোড করতে পারেন।

3, আপনি অন্যান্য টিসিপি প্যারামিটারগুলিকে সুর করার চেষ্টা করতে পারেন। tcp_westwood = 1 এবং tcp_bic = 1 সেট করুন


ধন্যবাদ, তবে আমরা সেগুলি সব চেষ্টা করেছি। WAN দেরি ইস্যু নয় - আমরা যদি 100 এমবিপিএস পোর্ট ব্যবহার করি তবে আমরা প্রায় সাথে সাথে 100 এমবিপিএস হিট করতে পারি, তবে যত তাড়াতাড়ি একটি 1 জিবিপিএসে পরিবর্তন হয় তারপরে আমরা টোস্ট হয়ে যাই।
স্যাম

1

মীমাংসিত! সম্পূর্ণ তথ্যের জন্য দেখুন http://comments.gmane.org/gmane.linux.drivers.e1000.devel/11813

সংক্ষেপে, এটি প্রদর্শিত হয় যে 1 জিবিপিএস সংযুক্ত সার্ভারটি টিসিপির তীব্র বিকাশের পর্যায়ে ট্র্যাফিকের প্রসারণ প্রেরণ করবে যা কিছু মধ্যবর্তী ডিভাইসে বাফারগুলি বয়ে আনবে (কে জানে)। এটি দুটি বিকল্প ছেড়ে দেয়:

1) প্রতিটি মধ্যবর্তী নেটওয়ার্ক অপারেটরের সাথে যোগাযোগ করুন এবং আমার কাঙ্ক্ষিত ব্যান্ডউইথ এবং আরটিটির জন্য মঞ্জুরি দেওয়ার জন্য তাদের উপযুক্ত বাফারগুলি কনফিগার করুন। খুব অসম্ভব! 2) বিস্ফোরণ সীমাবদ্ধ।

আমি প্রতিটি টিসিপি ফ্লো সর্বাধিক 100 এমবিপিএস এ পরিচালনা করতে বেছে নিয়েছি। সংখ্যা এখানে মোটামুটি নির্বিচারে - আমি 100Mbps বিশুদ্ধরূপে বেছে নেওয়া হয়েছে কারণ আমি জানতাম পূর্ববর্তী পথ 100Mbps হ্যান্ডেল পারে এবং আমি কোন প্রয়োজন ছিল না একজন ব্যক্তি প্রবাহের জন্য

আশা করি এটি ভবিষ্যতে কাউকে সহায়তা করবে।


0

আইপিএফ ব্যবহার করে ইউডিপিতে একই পরীক্ষাগুলির পুনরাবৃত্তি করা, সমস্যাটি অদৃশ্য হয়ে যায়!

লস অ্যাঞ্জেলেস (1 জিবিপিএস) থেকে লন্ডন (1 জিবিপিএস):> 250 এমবিপিএস থ্রুপুট

সমস্যাটি শেষ হয়ে গেছে বলে মনে হচ্ছে না, তুচ্ছভাবে আপনার 75% প্যাকেটগুলি বাদ যাচ্ছে? যদি টিসিপি সর্বদা ধীর গতিতে চলে যায় তবে আপনার গড় ব্যান্ডউইথটি কম হতে পারে।

বিটিডব্লিউ, আপনার কি লন্ডন থেকে এলএ এবং লন্ডন থেকে লন্ডনের বেঞ্চমার্ক রয়েছে?


আমি উল্লেখ করতে ভুলে গেছি যে ক্লায়েন্টটি ধীর গতির ... আমরা যদি দুটি দ্রুত ক্লায়েন্টের সাথে পুনরাবৃত্তি করি, তবে আমরা দ্বি-দিকনির্দেশে ~ 970 এমবিপিএস হিট করি।
স্যাম
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.