কেন আমাদের 3-উপায় হ্যান্ডশেক দরকার? শুধু দ্বি-পথ নয় কেন?


124

টিসিপি থ্রি-ওয়ে হ্যান্ডশেক এর মতো কাজ করে:

Client ------SYN-----> Server
Client <---ACK/SYN---- Server
Client ------ACK-----> Server

কেন শুধু এই না?

Client ------SYN-----> Server
Client <-----ACK------ Server

24
কেন আমাদের এমনকি একটি হ্যান্ডশেক দরকার? প্রথম প্যাকেট দিয়ে কেন বার্তা পাঠানো যাবে না?
মেহরদাদ

4
আপনি যদি হ্যান্ডশেকটি এড়িয়ে যেতে চান তবে আপনি পরিবর্তে ইউডিপি ব্যবহার করতে পারেন।
ওজনেটনার্ড

5
@ মেহরদাদ, আপনার নিজের একটি প্রশ্ন থাকলে দয়া করে নিজের পোস্ট করতে পৃষ্ঠার শীর্ষে প্রশ্ন জিজ্ঞাসা লিঙ্কটি ব্যবহার করুন ।
YLearn

40
@YLearn: দুঃখিত, এটি আসলে আমার নিজের একটি প্রশ্ন নয়, বরং পাঠকদের এমন উত্তর দেওয়ার জন্য অনুপ্রাণিত করা হয়েছিল যা প্রশ্নে আক্ষরিকভাবে বলা হয়েছে তার থেকে কিছুটা গভীর গভীর খনন করে।
মেহরদাদ

3
টিসিপি ফাস্ট ওপেন (আরএফসি 7413) সম্পর্কে ভুলে যাবেন না
Alnitak

উত্তর:


158

হ্যান্ডশেকটি আসলে কী করছে তা ভেঙে দিন।

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

তবে সিকোয়েন্স নম্বরটি 0 থেকে শুরু হয় না এটি ISN (প্রারম্ভিক সিকোয়েন্স নম্বর) থেকে শুরু হয়, যা এলোমেলোভাবে নির্বাচিত মান। এবং যেহেতু টিসিপি দ্বি-দিকনির্দেশক যোগাযোগ, উভয় পক্ষই "কথা বলতে" পারে, এবং তাই উভয়কেই এলোমেলোভাবে তাদের প্রারম্ভিক সিকোয়েন্স নম্বর হিসাবে একটি আইএসএন তৈরি করতে হবে। যার পরিবর্তে উভয় পক্ষকে তাদের শুরু হওয়া আইএসএন সম্পর্কে অন্য পক্ষকে অবহিত করা দরকার।

সুতরাং আপনি অ্যালিস এবং ববের মধ্যে একটি টিসিপি কথোপকথন শুরু করার জন্য ইভেন্টগুলির এই ক্রমটি শেষ করেছেন:

Alice ---> Bob    SYNchronize with my Initial Sequence Number of X
Alice <--- Bob    I received your syn, I ACKnowledge that I am ready for [X+1]
Alice <--- Bob    SYNchronize with my Initial Sequence Number of Y
Alice ---> Bob    I received your syn, I ACKnowledge that I am ready for [Y+1]

লক্ষ্য করুন, চারটি ঘটনা ঘটছে:

  1. অ্যালিস একটি আইএসএন বাছায় এবং বয়কে নিয়ে এসওয়াইএনক্রোনাইজ করে।
  2. ববি এসএনকে জানায় now
  3. বব একটি আইএসএন বাছাই করে এবং এলিসের সাথে এসওয়াইএনক্রোনাইজ করে।
  4. এলিস এসি আইএসএনকে জানায়।

বাস্তবে বাস্তবে, মাঝের দুটি ইভেন্ট (# 2 এবং # 3) একই প্যাকেটে ঘটে। কী এক প্যাকেট একটি তোলে SYNবা ACKসহজভাবে একটি বাইনারি পতাকা চালু বা বন্ধ প্রতিটি ভিতরে পরিণত বিভিন্ন TCP হেডার , তাই একই প্যাকেট সক্রিয় হওয়া থেকে এই পতাকার উভয় প্রতিরোধ কিছুই নেই। সুতরাং ত্রি-মুখী হ্যান্ডশেকটি শেষ হচ্ছে:

Bob <--- Alice         SYN
Bob ---> Alice     SYN ACK 
Bob <--- Alice     ACK     

"SYN" এবং "ACK" এর দুটি উদাহরণ দু'দিকেই লক্ষ্য করুন।


সুতরাং আপনার প্রশ্নে ফিরে আসতে, কেন কেবল দ্বি-মুখী হ্যান্ডশেক ব্যবহার করবেন না? সংক্ষিপ্ত উত্তরটি হ'ল দ্বিমুখী হ্যান্ডশেক কেবল একটি পক্ষকে আইএসএন প্রতিষ্ঠার অনুমতি দেবে এবং অন্য পক্ষটি এটি স্বীকৃতি জানাতে পারে। যার অর্থ শুধুমাত্র একটি পক্ষই ডেটা প্রেরণ করতে পারে।

তবে টিসিপি একটি দ্বি-দিকনির্দেশক যোগাযোগ প্রোটোকল, যার অর্থ উভয় প্রান্তটি নির্ভরযোগ্যভাবে ডেটা প্রেরণ করতে সক্ষম হওয়া উচিত। উভয় পক্ষের একটি আইএসএন প্রতিষ্ঠা করা দরকার, এবং উভয় পক্ষেরই অপরের আইএসএনকে স্বীকৃতি দেওয়া দরকার।

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


6
কেন আমাদের আদৌ আইএসএন দরকার? মানুষের এটির প্রয়োজন নেই, কম্পিউটার কেন? এটির কোনও প্রমাণ আছে, না আমাদের সুবিধার্থে কেবল এগুলি আছে?
মেহরদাদ

19
@ মেহরদাদ: সঠিকভাবে কাজ করতে (বা সত্যই আদৌ) কাজ করার জন্য আপনার ক্রম সংখ্যা প্রয়োজন। ক্রম পূর্বাভাসের আক্রমণগুলির কারণে আইএসএন কেবল শূন্য হতে পারে না ।
কেভিন

4
@ মেহরদাদ চ্যাট রুমটি অবশ্যই 'রিয়েল টাইম' হওয়া উচিত নয়, আমরা একে অপরের জন্য বার্তা রাখতে পারি। আমি অন্যত্র এটি পরিচালনা করার জন্য ভেবেছিলাম কারণ আপনি এখন অন্য প্রশ্ন জিজ্ঞাসা করছেন। ওপিতে "2 এর পরিবর্তে এটি 3 উপায় হ্যান্ডশেক কেন" জিজ্ঞাসা করা হয়েছিল, তবে এখন আপনি "আমাদের কেন একেবারে সিকোয়েন্স নম্বর দরকার" প্রশ্ন করছেন, যা আলাদা। এই থ্রেডটিকে লেনদেন করার পরিবর্তে, আমি ভেবেছিলাম আমাদের আড্ডায় অন্যান্য প্রশ্নটি নিয়ে আলোচনা করা উচিত। বিকল্পভাবে , আপনি একটি নতুন প্রশ্ন পোস্ট করতে পারেন, আমি নিশ্চিত যে এটি কিছু ভাল উত্তর জাল করবে।
এডি

4
দুর্দান্ত, সংক্ষিপ্ত উত্তর "ACK SYN" পড়া মৌলিকভাবে ভুল মনে হয় তবে আপনি এমনকি এটিও +1 ব্যাখ্যা করেছেন।
লিলিয়েনথাল

3
আরএফসি 3 3৩ অনুসারে ট্রান্সমিশন কন্ট্রোল প্রোটোকল : " ত্রি-মুখী হ্যান্ডশেকের মূল কারণ হ'ল পুরাতন সদৃশ সংযোগের উদ্যোগকে বিভ্রান্তি থেকে বাধা দেওয়া to "
রন মউপিন

23

কারণ উভয় পক্ষের প্রয়োজন তিনপথ হ্যান্ডশেক প্রয়োজনীয় SYN chronize তাদের সেগমেন্ট ক্রম তাদের সংক্রমণ সময় ব্যবহৃত নম্বর। এটির জন্য তাদের প্রতিটি পাঠায় (পালাক্রমে) একটি র্যান্ডম মানে সেট একটি ক্রম নম্বরে কোনো SYN সেগমেন্ট এন , যা করা হয় ACK সেট একটি ক্রম নম্বরে কোনো সেটি হল ACK সেগমেন্ট এর মাধ্যমে অন্যান্য পক্ষ দ্বারা nowledged এন + 1 টি


স্বীকৃতি কেন দরকার?
পাওলো ইবারম্যান

4
@ পাওলোবারম্যান: কারণ অন্যথায় সার্ভারের কোনও ধারণা নেই যদি ক্লায়েন্টটি কখনও এসআইএন পায়, এবং এটি গুরুত্বপূর্ণ যে ক্লায়েন্ট সেটি গ্রহণ করে।
21 শে

2
@ PaŭloEbermann এবং এটি প্রমাণ করতে, ACK পদক্ষেপটি হল [এক্স + 1] এর সাথে স্বীকৃতি জানানো। - Eddieতার উত্তরের মন্তব্য থেকে উদ্ধৃত ।
স্মিভিকিপিডিয়া

14

সংযোগটি কাজ করার জন্য, প্রতিটি পক্ষের এটি যাচাই করা দরকার যে এটি অন্যদিকে প্যাকেটগুলি প্রেরণ করতে পারে। আপনি যে কোনও প্যাকেট অন্যদিকে পেয়েছিলেন তা নিশ্চিত হওয়ার একমাত্র উপায় হ'ল তাদের কাছ থেকে একটি প্যাকেট পেয়ে যে সংজ্ঞা অনুসারে আপনি যে প্যাকেটটি পাঠিয়েছিলেন তা না পেলে পাঠানো হত না । টিসিপি মূলত এর জন্য দুটি ধরণের বার্তা ব্যবহার করে: এসওয়াইএন (এই প্যাকেটটি দিয়েছিল তার প্রমাণের জন্য) এবং এসিএন (যা কেবল কোনও এসওয়াইএন পাওয়ার পরে প্রেরণ করা হয় তা প্রমাণ করার জন্য যে এসওয়াইএন হয়েছে)। সেখানে আসলে তৃতীয় ধরণের বার্তা রয়েছে তবে আমরা তা মুহূর্তের মধ্যেই পেয়ে যাব।

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

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

যেহেতু একটি SYN-ACK একটি ACK, ক্লায়েন্ট এখন নিশ্চিতভাবেই জানে যে এটি সার্ভারে প্যাকেটগুলি প্রেরণ করতে পারে। এবং যেহেতু একটি SYN-ACK একটি SYN, এটি এটিও জানে যে সার্ভারটি এই বার্তাটি পেয়েছে তার প্রমাণ চায়। সুতরাং এটি একটি এসকে ফেরত পাঠায়: এবার কেবল একটি সরল এসিকে, কারণ এর প্যাকেটগুলি পেতে পারে তার আর প্রমাণের দরকার নেই। এই হ্যান্ডশেক চূড়ান্ত পদক্ষেপ হল: ক্লায়েন্ট এখন জানে প্যাকেট উভয় উপায় যেতে পারেন, এবং সার্ভার যে প্রায় এই জিনিসটা (কারণ তা জানেন সেটি হল ACK মধ্য দিয়ে যেতে হবে)।

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

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


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

ধন্যবাদ। রেকর্ডিং: এসআইএনগুলি একবার এসআইএন-এর মাধ্যমে প্রেরণ না করে কেবল এসআইএন-এর মাধ্যমে প্রেরণ করা হবে।
দ্য স্পুনিয়েস্ট

এটি সর্বোত্তম উত্তর যা আমাদের তৃতীয় বার্তাটি কেন প্রয়োজন তা যুক্তিযুক্তভাবে ব্যাখ্যা করতে পারে। ধন্যবাদ, স্পুনিস্ট।
পার্থ প্যাটেল

7

আসলে, 3-উপায় হ্যান্ডশেক টিসিপি সংযোগ স্থাপনের একমাত্র উপায় নয়। একযোগে এসওয়াইএন এক্সচেঞ্জেরও অনুমতি রয়েছে: http://www.tcpipguide.com/free/t_TCPConnicationEstablishmentProcessTheTreeWayHandsh-4.htm

এটি ডাবল 2-ওয়ে হ্যান্ডশেকের ধরণের হিসাবে দেখা যেতে পারে।


1
ভাল পয়েন্ট, তবে এটি খুব বিরল কারণ উভয় ডিভাইসই একই উত্স / গন্তব্য পোর্ট ব্যবহার করতে হবে এবং অন্য ডিভাইসটি অন্যটি এসওয়াইএন পাওয়ার আগে একটি এসওয়াইএন পাঠাতে হবে। এমনকি যখন এটি ঘটে তখনও এতে চারটি প্যাকেট প্রেরণ করা জড়িত, যা প্রচলিত 3-উপায় হ্যান্ডশেকের জন্য প্রয়োজনীয় তিনটি প্যাকেটের চেয়ে বেশি; শেষ পর্যন্ত কেবলমাত্র সামগ্রিক সময়ের হিসাবে কম সামগ্রিক দক্ষতার ব্যয়ে সেট আপ করার জন্য কিছুটা দ্রুত হওয়ার সম্ভাবনা (33% বেশি প্যাকেট সংক্রমণ করার প্রয়োজন হয়)।
YLearn

4

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


2

যদি সার্ভার এবং ক্লায়েন্ট কোনও সংযোগ তৈরি করতে চান তবে তাদের চারটি বিষয় নিশ্চিত করতে হবে:

  1. সার্ভারের নিশ্চিত হওয়া দরকার যে সে ক্লায়েন্টের কাছ থেকে প্যাকেট গ্রহণ করতে পারে
  2. ক্লায়েন্টকে নিশ্চিত করতে হবে যে সে সার্ভারের কাছ থেকে প্যাকেট গ্রহণ করতে পারে

  3. ক্লায়েন্টকে একটি জিনিস নিশ্চিত করতে হবে: সার্ভার ক্লায়েন্টের কাছ থেকে প্যাকেট গ্রহণ করতে পারে

  4. সার্ভারকে একটি জিনিস নিশ্চিত করতে হবে: ক্লায়েন্ট সার্ভার থেকে প্যাকেট গ্রহণ করতে পারে

পরে Client ------SYN-----> Server, বিধি 1 নিশ্চিত করা হয়েছে।

পরে Client <---ACK/SYN---- Server, বিধি 2 এবং 3 নিশ্চিত হয়ে গেছে।

সুতরাং, নিয়ম 4 নিশ্চিত করতে একটি তৃতীয় প্যাকেট দরকার।


1

এটি মোটেই প্রয়োজন হয় না। এটা স্পষ্ট যে একটি সংক্ষিপ্ত বার্তায় কেবল সার্ভারের জন্য একটি প্যাকেট থাকা উচিত যার মধ্যে স্টার্ট + বার্তা অন্তর্ভুক্ত থাকে এবং একটি প্যাকেট এটি স্বীকার করে ফিরে আসে।

পূর্ববর্তী উত্তরগুলি প্রথমে প্রথমে র্যান্ডম সিকোয়েন্স সংখ্যাগুলির প্রয়োজনীয়তার জন্য আলোচনা না করেই সিস্টেমটি বর্ণনা করে। মূল প্রশ্নটি টিসিপি নিজেই ডিজাইনের ছিল - স্পষ্টত যদি আপনি টিসিপি প্রোটোকল ব্যবহার করেন তবে আপনার জন্য তিনটি বার্তা প্রয়োজন কারণ এটি প্রোটোকল। তবে টিসিপি কেন প্রথম জায়গায় ডিজাইন করা হয়েছিল?

আমি বিশ্বাস করি যে আসল ধারণাটি ছিল ক্লায়েন্ট এবং সার্ভারগুলির মধ্যে কোনও পার্থক্য নেই। উভয়ই অন্যের বন্দরগুলিকে দ্বিপাক্ষিক পদ্ধতিতে জানত এবং হয় কথোপকথনটি শুরু করতে পারে। এবং যে Syns ইত্যাদি প্রয়োজন।

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

(দ্রষ্টব্য যে এটি সংযোগের দ্বিপাক্ষিক সূচনা সম্পর্কে, যা আজ কখনই করা হয় না once এটি একবার প্রতিষ্ঠিত সংযোগে দ্বিপাক্ষিক বার্তা প্রেরণ করা থেকে একেবারেই আলাদা))

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

তবে এইচটিটিপি 1.1 তুলনামূলকভাবে নতুন। এবং পি কেআই অ্যালগরিদমের ব্যয়ের কারণে এসএসএল / টিএলএসের শুরু থেকেই সেশনটি পুনরায় ব্যবহার করার একটি উপায় প্রয়োজন needed যাতে প্রোটোকলটির নিজস্ব সেশন পুনঃব্যবহার প্রক্রিয়া অন্তর্ভুক্ত থাকে যা এইচটিটিপি 1.1 এর শীর্ষে চলে টিসিপির শীর্ষে চলে।

সফটওয়্যার দিয়ে এইভাবে। মলমূত্রের উপর চাপগুলি যা মিলিত হলে একটি গ্রহণযোগ্য ফলাফল দেয়।


ওএসআই স্তর -4 এর উপরে যে কোনও কিছু (যেমন HTTP, FTP, ইত্যাদি) এখানে স্পষ্টত অফ-টপিক। 1 থেকে 4 স্তরগুলিতে ক্লায়েন্ট / সার্ভারের মতো কোনও জিনিস নেই। টিসিপি হ'ল পিয়ারদের মধ্যে একটি সংযোগ। হ্যাঁ, উপরের স্তর প্রোটোকলগুলি একটি ক্লায়েন্ট / সার্ভারের সম্পর্ক তৈরি করে তবে এটি এখানে অফ-টপিক।
রন মউপিন

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

@ রনমপিন মূল প্রশ্নটি কেন ছিল? এবং উত্তরটি এমন ব্যবহারের ক্ষেত্রে সমর্থন করা যা অনুশীলনে কখনও উচ্চ স্তরের স্তর ব্যবহার করে না। সুতরাং, বেশ প্রাসঙ্গিক বলে মনে হচ্ছে।
টুনটেবল

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

1
অ্যাপ্লিকেশন এবং অ্যাপ্লিকেশন-স্তর প্রোটোকলগুলি এখানে স্পষ্টভাবে অফ-টপিকের। @ এডি প্রশ্নের উত্তর দিয়েছিলেন, এবং আপনি যদি টিসিপি আরএফসি পড়েন এবং বুঝতে পারেন তবে কেন হ্যান্ডশেক করা জরুরি তা আপনি পেয়ে যাবেন। আমি মনে করি না যে কোনও দাবি ছাড়াই এটি আপনার দাবি করার জন্য কিছু যুক্ত করেছে, যখন স্পষ্টভাবে হ্যান্ডশেক দরকার হয় না।
রন মউপিন

1

এডির উত্তর পড়ার পরে (সঠিক হিসাবে গ্রহণযোগ্য), এখনও প্রশ্ন রয়েছে যে 1 ম হোস্ট কেন আইএসএন উভয়কে এলোমেলো সংখ্যার সাথে বরাদ্দ করতে পারে না এবং 2 য় মাত্র এটি গ্রহণ করে। থ্রি-ওয়ে হ্যান্ডশেক ব্যবহারের আসল কারণ হ'ল অর্ধ-সংযোগ এড়ানো । দ্বি-মুখী হ্যান্ডশেকে অর্ধ সংযোগের পরিস্থিতি:
1) ক্লায়েন্ট --- এসওয়াইএন -> সার্ভার
2) ক্লায়েন্ট তার মন পরিবর্তন করে এবং আর সংযোগ করতে চান না
3) ক্লায়েন্ট <-X-ACK-- সার্ভার // ACK হারিয়ে গেছে
সার্ভার রাগান্বিত এসওয়াইএন দেখতে পাচ্ছে না, তাই তিনি মনে করেন যে ক্লায়েন্ট তার এসি কে পেয়েছে এবং সংযোগ স্থাপন করা হয়েছে। ফলস্বরূপ সার্ভারের সংযোগ রয়েছে যা কখনই বন্ধ হবে না


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

@ রোনমপিন তারপরে এসি প্যাকেটটি নষ্ট হয়ে যাওয়ার পরে পরিস্থিতি ধরে নেওয়া যাক।
সানঝার ইলেউভ

যদি ACK হারিয়ে যায়, তবে পদক্ষেপ 1-এ শুরু করা সংযোগটি শেষ হয়ে যাবে। আরএফসি 3৯৩ এর ডায়াগ্রাম সহ সকল প্রকারের দৃশ্যের পুরো ব্যাখ্যা রয়েছে।
রন মউপিন

@ রোনমপিন আমার অর্থ যদি আমার পোস্টের পরিস্থিতি একই রকম থেকে থাকে তবে কেবল যে জিনিসটি পরিবর্তিত হয়েছিল, এটি ACK হারিয়ে গেছে।
সান্জার ইয়েলিউভ

সব কিছুই আরএফসিতে রয়েছে। কোনও সংযোগ খোলা না হওয়া পর্যন্ত যে কোনও ট্র্যাফিক প্রাপ্তির ফলে আরএসটি হবে। ত্রি-মুখী হ্যান্ডশেকটি সংযোগের প্যারামিটারগুলির সাথে আলোচনা করে, তাই "সার্ভার" "ক্লায়েন্ট" -কে কিছু ফেরত পাঠাতে পারে না তবে এটি "ক্লায়েন্ট" এর কাছ থেকে এসিকে না পাওয়া পর্যন্ত এটি এসওয়াইএন / এসি কে। যদি "সার্ভার" SYN / ACK "ক্লায়েন্ট" এ ফিরে যায় তবে "সার্ভার" আবার চেষ্টা করবে। আরএফসি এই সমস্ত ব্যাখ্যা করে।
রন মাউপিন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.