টিসিপি হাফ ওপেন সংযোগ এবং টিসিপি অর্ধেক বন্ধ সংযোগটি কী


17

আমি বুঝতে চেষ্টা করছি যে টিসিপি হাফ ওপেন সংযোগ এবং টিসিপি অর্ধ বন্ধ সংযোগের মধ্যে পার্থক্য কি কেউ বলতে পারে তারা আসলে কি?

উত্তর:


26

এই পোস্টটি অর্ধেক বন্ধ সংযোগে প্রসারিত হয়। অর্ধেক উন্মুক্ত সংযোগের জন্য কেসিন্ট্রিউর সঠিক বিবরণ দেখুন।

অর্ধ বন্ধ সংযোগগুলি কী কী? বা: এটি কোনও বাগ নয় - এটি একটি বৈশিষ্ট্য!

প্রতিটি টিসিপি সংযোগে দুটি অর্ধ-সংযোগ থাকে যা একে অপরের থেকে স্বাধীনভাবে বন্ধ থাকে। সুতরাং যদি এক প্রান্তটি একটি এফআইএন প্রেরণ করে, তবে অন্য প্রান্তটি কেবল এসইকেই ফ্রি হয় (এটি ফিন + এসি-ইনগের পরিবর্তে), এটি ফিন-প্রেরণের শেষের ইঙ্গিত দেয় যে এটিতে এখনও পাঠানোর ডেটা রয়েছে। সুতরাং উভয় প্রান্ত ESTABLISHED ব্যতীত স্থিতিশীল ডেটা স্থানান্তর অবস্থায় শেষ হবে - যথা FIN_WAIT_2 (প্রাপ্তির শেষের জন্য) এবং CLOSE_WAIT (প্রেরণের শেষের জন্য)। এই জাতীয় সংযোগটি অর্ধ বন্ধ হয়ে গেছে বলে মনে করা হয় এবং টিসিপি আসলে সেই পরিস্থিতিগুলিকে সমর্থন করার জন্য ডিজাইন করা হয়েছে, তাই অর্ধেক বন্ধ সংযোগগুলি একটি টিসিপি বৈশিষ্ট্য।

অর্ধ বন্ধ সংযোগের ইতিহাস

আরএফসি 3৯৩ কেবলমাত্র "অর্ধেক বন্ধ" শব্দটি উল্লেখ না করে কাঁচা প্রক্রিয়া বর্ণনা করে, আরএফসি ১১২২ ধারা ৪.২.২.১৩ এ সে বিষয়ে বিশদভাবে জানিয়েছে। আপনি ভাবতে পারেন যে জাহান্নামের সেই বৈশিষ্ট্যটি কার দরকার। টিসিপির ডিজাইনাররা ইউনিক্স সিস্টেমের জন্যও টিসিপি / আইপি প্রয়োগ করেছিলেন এবং প্রতিটি ইউনিক্স ব্যবহারকারীর মতো আই / ও পুনঃনির্দেশ পছন্দ করেছিলেন। ডাব্লু স্টিভেন্সের (টিসিপি / আইপি চিত্রিত, বিভাগ 18.5) এর মতে টিসিপি স্ট্রিমগুলির I / O- পুনঃনির্দেশ করার ইচ্ছাটি বৈশিষ্ট্যটি প্রবর্তনের প্রেরণা ছিল। এটি এফআইএন এসিকে ইওএফ হিসাবে ভূমিকা নিতে বা অনুবাদ করতে সহায়তা করে। সুতরাং এটি মূলত এমন একটি বৈশিষ্ট্য যা আপনাকে অ্যাপ্লিকেশন স্তরে অনিয়মিতভাবে অনুরোধ / প্রতিক্রিয়া-শৈলীর ইন্টারঅ্যাকশন তৈরি করতে দেয়, যেখানে এফআইএন সংকেত "অনুরোধের শেষ" হয়।


10

বোবার বর্ণনা কি আধ খোলা এবং অর্ধ বদ্ধ সংযোগ আসলে একটি মোটামুটি শালীন কাজ করেছেন হয় , কিন্তু অর্ধ খোলা সংযোগ ধারণা এছাড়াও প্রায়ই একটি তাদের প্রেক্ষাপটে জন্য অনুসন্ধান করা হয় একটি সমস্যা হচ্ছে।

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

তবে, অন্যটি সম্পর্কিত ... "সমস্যা": এটি টিসিপি সংযোগ খোলার জন্য একটি 3 উপায় হ্যান্ডশেক এবং এটি বন্ধ করতে 4-মুখী হ্যান্ডশেক লাগে।

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

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

এই শর্তটি টিসিপির কিপ-আলাইভসের alচ্ছিক প্রকৃতির দ্বারা আরও বেড়েছে, যা পুরোপুরি প্রয়োগ করা হলে মৃত / জম্বি সংযোগ সনাক্তকরণের সমাধান হিসাবে প্রোটোকল স্তর (অ্যাপ্লিকেশন স্তরের বিপরীতে) হিসাবে চিহ্নিত করা হত। তবে, যখন টিসিপি ডিজাইন করা হয়েছিল, ব্যান্ডউইথ এখনকার তুলনায় অনেক বেশি মূল্যবান ছিল, এবং এমন উদ্বেগও ছিল যে টিসিপি-র জন্য ম্যান্ডাডোরি কিপ-টাইভ টাইমারগুলি খুব "চ্যাটি" হবে। সুতরাং কিপ-অ্যালাইভগুলি alচ্ছিক, সাধারণত ব্যবহৃত হয় না এবং আরএফসি 1122 অনুসারে রাউটারগুলির মাধ্যমে প্রেরণ করার গ্যারান্টি নেই। সুতরাং ... আপনি দৃশ্যটি সনাক্ত / পরিচালনা করার জন্য টিসিপি স্তরটিতে কিপ-অ্যালাইভ সক্ষম করলেও আপনি দেখতে পাবেন যে আপনার ট্র্যাফিক বিশ্বজুড়ে ভ্রমণ করার সাথে সাথে কিছু রাউটারগুলি ক্যাপ-লাইভ প্যাকেটগুলি ফেলে দিচ্ছে ... তৈরি করছে সম্ভাব্যভাবে অন্য কোনও দুর্লভ দৃশ্য পরীক্ষা করার জন্য।

হাফ-ওপেন সংযোগগুলি টিসিপি-ভিত্তিক সার্ভারগুলি লেখার কোডারদের জন্য প্রকৌশল চ্যালেঞ্জের কিছুটা দাঁড় করায়, বিশেষত, কারণ তারা অনিচ্ছাকৃতভাবে উচ্চ-লোডের সময় এলোমেলোভাবে উপস্থিত হতে পারে ... এবং সাধারণত উত্পাদন সার্ভারে ... এবং হতে পারে আলফা / বিটা পরীক্ষার পর্যায়ে লক্ষ্য করা মুশকিল। আমার অভিজ্ঞতায়, আমি সেগুলিতে 2.5 মিলিয়ন সংযোগ / দিন পরিচালনা করে এমন সার্ভারগুলিতে 40,000 সংযোগে সম্ভবত 1 টি ঘটতে পেরেছি, তবে আপনার নম্বরগুলি আপনার ট্র্যাফিক এবং আপনার সার্ভার এবং ক্লায়েন্টের মধ্যে ইন্টারনেটের প্রতিটি পায়ের ট্র্যাফিকের উপর নির্ভর করে পরিবর্তিত হবে vary ।

একজন প্রকৌশলী হিসাবে, যে সমস্যাগুলি কেবলমাত্র এবং কেবলমাত্র লাইভ, মোতায়েন সার্ভারগুলিতে ঘটে সেগুলি সনাক্ত করা কঠিন হতে পারে, সুতরাং আপনার সার্ভারের প্রতিক্রিয়া কী হবে তা বিশ্লেষণ করার জন্য টিসিপি সার্ভার কোড লেখার সময় সংযোগের এই বিরল অবস্থার অনুকরণ করার চেষ্টা করা গুরুত্বপূর্ণ is এই পরিস্থিতির মুখোমুখি। আপনার টিসিপি সার্ভার উদাহরণস্বরূপ স্থির সংখ্যক কর্মী-থ্রেড ব্যবহার করে, উদাহরণস্বরূপ, আপনি উত্পাদনে নিযুক্ত করার সময় আপনি এগুলি সমস্ত জম্বি সংযোগ দ্বারা গ্রাস করতে পারেন। যদি সংযোগগুলির জন্য প্রচুর পরিশ্রমী মেমরির প্রয়োজন হয়, তবে শেষের ফলাফলটি মেমরি ফাঁসের অনুরূপ উপস্থিত হতে পারে। ইত্যাদি ইত্যাদি

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

টিসিপির দুর্বলতা এবং এইচটিটিপি / ওয়েব ট্র্যাফিক সংক্রমণে এর দুর্ভাগ্যজনক জনপ্রিয়তা চিহ্নিত করে স্মার্ট সংস্থাগুলি প্রতিস্থাপনের সন্ধান করেছে। উদাহরণস্বরূপ, গুগল কুইক নামক একটি প্রোটোকল নিয়ে পরীক্ষা-নিরীক্ষা করেছিল, যা ইউটিপির মাধ্যমে HTTP প্রেরণ করে। টিএসসিপি নামে একটি ওপেন প্রোটোকলও রয়েছে। তবে এই প্রোটোকলগুলির কোনওটিরই বিস্তৃত গ্রহণ হয়নি।

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


9

যখন টিসিপি কোনও সংযোগ স্থাপন করে, এটির নিশ্চয়তা হিসাবে বিবেচনা করা হয় যেহেতু একটি হ্যান্ডশেক ঘটেছিল:

  1. আরম্ভকারী কম্পিউটার একটি এসওয়াইএন প্রেরণ করে সংযোগের অনুরোধ পাঠায়
  2. প্রতিক্রিয়াশীল কম্পিউটারটি একটি এসওয়াইএন-এসিকে জবাব দিয়ে অনুরোধ মঞ্জুর করে
  3. দীক্ষিত কম্পিউটারটি একটি এসকে দিয়ে জবাব দিয়ে একটি স্বীকৃতি প্রেরণ করে

এই মুহুর্তে সংযোগটি প্রতিষ্ঠিত হয় এবং ডেটা প্রবাহিত হতে শুরু করে। বিপরীতে, একটি ইউডিপি প্যাকেট গ্যারান্টিযুক্ত নয়, এবং কেবল সেখানে পাওয়া আশায় প্রেরণ করা হয়।

http://en.wikipedia.org/wiki/Transmission_Control_Protocol#Connection_establishment

এখানে চিত্র বর্ণনা লিখুন

আনুষ্ঠানিকভাবে, আরএফসি'র মতে, অর্ধ-খোলা টিসিপি সংযোগটি তখনই হয় যখন প্রতিষ্ঠিত সংযোগের একপাশে ক্রাশ হয়ে যায় এবং সংযোগটি শেষ হয়ে যাচ্ছে এমন বিজ্ঞপ্তি প্রেরণ করেনি। এটি আজকের সাধারণ ব্যবহার নয়।

আনুষ্ঠানিকভাবে, যদি একটি ভ্রূণ সংযোগ বোঝায়, যা প্রতিষ্ঠিত হওয়ার প্রক্রিয়ায় একটি সংযোগ।

http://en.wikipedia.org/wiki/Embryonic_connection

অর্ধ-বন্ধ এটি অনানুষ্ঠানিক সংজ্ঞাটির বিপরীত। এটি মাঝখানে কোথাও এমন একটি রাষ্ট্র যেখানে কম্পিউটারগুলি সংযুক্ত সংযোগটি ছিন্ন করে।


4
অর্ধ-বন্ধ সম্পর্কে আপনার মন্তব্যগুলি বিভ্রান্তিমূলক
শিল্পীেক্স

0

টিসিপি সংযোগ সমাপ্তির সেরা ব্যাখ্যা

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

11 এখানে চিত্র বর্ণনা লিখুন

টিসিপিতে কীভাবে প্রক্রিয়া কাজ করে:

Step 1 (FIN From Client) – Suppose that the client application decides it wants to close the connection. (Note that the server could also choose to close the connection). This causes the client send a TCP segment with the FIN bit set to 1 to server and to enter the FIN_WAIT_1 state. While in the FIN_WAIT_1 state, the client waits for a TCP segment from the server with an acknowledgment (ACK).
Step 2 (ACK From Server) – When Server received FIN bit segment from Sender (Client), Server Immediately send acknowledgement (ACK) segment to the Sender (Client).
Step 3 (Client waiting) – While in the FIN_WAIT_1 state, the client waits for a TCP segment from the server with an acknowledgment. When it receives this segment, the client enters the FIN_WAIT_2 state. While in the FIN_WAIT_2 state, the client waits for another segment from the server with the FIN bit set to 1.
Step 4 (FIN from Server) – Server sends FIN bit segment to the Sender(Client) after some time when Server send the ACK segment (because of some closing process in the Server).
Step 5 (ACK from Client) – When Client receive FIN bit segment from the Server, the client acknowledges the server’s segment and enters the TIME_WAIT state. The TIME_WAIT state lets the client resend the final acknowledgment in case the ACK is lost.The time spent by client in the TIME_WAIT state is depend on their implementation, but their typical values are 30 seconds, 1 minute, and 2 minutes. After the wait, the connection formally closes and all resources on the client side (including port numbers and buffer data) are released.

সম্পর্কে আরও: https://www.geeksforgeeks.org/tcp-connection-termission/


-1

অর্ধ বদ্ধ সংযোগ একটি প্রক্রিয়া যা সার্ভারের এক প্রান্ত এবং ক্লায়েন্টের সংযোগটি শেষ করার ইচ্ছায় প্রতিষ্ঠিত হয়। টিসিপি একটি সংযোগ ভিত্তিক প্রক্রিয়া, সুতরাং প্রতিটি সকেট একটি নির্দিষ্ট অ্যাপ্লিকেশনের জন্য খোলা হয়। টিসিপিতে অ্যাপ্লিকেশনটি বন্ধ করার কোনও চাপ নেই। সুতরাং সংযোগ ভিত্তিক প্রক্রিয়া অপেক্ষা সংকেত সহ সমাপ্তি দীর্ঘায়িত করে। একে টিসিপিতে সংযোগ হিসাবে বলা হয় (সংযোগ)


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