பின்னணி மற்றும் தொழில்நுட்பம் உட்பட Winsock அறிமுகம்
Introduction Winsock Including Background Technology
இந்த இடுகை முக்கியமாக விண்டோஸ் சாக்கெட்ஸ் ஏபிஐ பற்றி பேசுகிறது, இது WSA மற்றும் Winsock என சுருக்கப்படலாம். இந்த இடுகையைப் படித்த பிறகு, அதன் வரையறை, பின்னணி, தொழில்நுட்பம் மற்றும் செயல்படுத்தல் ஆகியவற்றை நீங்கள் அறிந்து கொள்ளலாம்.
இந்தப் பக்கத்தில்:வின்சாக்கிற்கான வரையறை
Winsock என்றால் என்ன? கம்ப்யூட்டிங்கில், Winsock என்பது விண்டோஸ் நெட்வொர்க் மென்பொருள் எவ்வாறு நெட்வொர்க் சேவைகளை, குறிப்பாக TCP/IP ஐ எவ்வாறு அணுக வேண்டும் என்பதை வரையறுக்கப் பயன்படும் தொழில்நுட்ப விவரக்குறிப்பாகும். இது வின்சாக் என்று அழைக்கப்படுகிறது, ஏனெனில் இது பெர்க்லி யுனிக்ஸ் சாக்கெட் இடைமுகத்தை விண்டோஸுக்குத் தழுவியது. ஒரு சாக்கெட் என்பது ஒரே கணினி அல்லது நெட்வொர்க்கில் உள்ள இரண்டு நிரல் செயல்முறைகளுக்கு இடையில் தரவை இணைக்கவும் பரிமாற்றவும் பயன்படுத்தப்படும் ஒரு சிறப்பு ஒப்பந்தமாகும்.
உதவிக்குறிப்பு: பிற இணைய நெறிமுறைகளைப் பற்றிய கூடுதல் தகவல்களை நீங்கள் அறிய விரும்பினால், MiniTool இணையதளத்திற்குச் செல்ல பரிந்துரைக்கப்படுகிறது.
Winsock என்பது Windows Sockets API (WSA) என்பதன் சுருக்கமாகும். இது Windows TCP/IP கிளையன்ட் பயன்பாடுகள் (FTP கிளையண்டுகள் அல்லது இணைய உலாவிகள் போன்றவை) மற்றும் அடிப்படை TCP/IP நெறிமுறை அடுக்கு ஆகியவற்றுக்கு இடையேயான நிலையான இடைமுகத்தை வரையறுக்கிறது.
தொடர்புடைய இடுகை: Windows 10 நெட்வொர்க் சிக்கலை சரிசெய்ய Netsh Winsock Reset Command ஐப் பயன்படுத்தவும்
வின்சாக்கின் பின்னணி
அக்டோபர் 1991 இல் CompuServe BBS நெட்வொர்க்கில் BoF (பேர்ட் ஆஃப் எ ஃபெதர்) விவாதத்தில் JSB மென்பொருளின் (பின்னர் ஸ்டார்டஸ்ட் டெக்னாலஜிஸ்) மார்ட்டின் ஹால் விண்டோஸ் சாக்கெட்ஸ் API முன்மொழியப்பட்டது.
விவரக்குறிப்பின் முதல் பதிப்பு மார்டின் ஹால், மைக்ரோடைனின் மார்க் டவ்ஃபிக் (பின்னர் சன் மைக்ரோசிஸ்டம்ஸ்), சன் மைக்ரோசிஸ்டம்ஸின் ஜெஃப் அர்னால்ட் மற்றும் ஹென்றி சாண்டர்ஸ் மற்றும் மைக்ரோசாப்டின் ஜே அலார்ட் ஆகியோரால் பலரின் உதவியுடன் எழுதப்பட்டது.
பதிப்புரிமை, அறிவுசார் சொத்து மற்றும் சாத்தியமான நம்பிக்கையற்ற சிக்கல்களைத் தீர்ப்பது மற்றும் IETF அல்லது இலாப நோக்கற்ற அடித்தளங்களை நிறுவுதல் மூலம் பணியைப் பரிசீலிப்பது குறித்து சில விவாதங்கள் நடந்தன. இறுதியில், விவரக்குறிப்பு ஐந்து (இணைக்கப்படாத) ஆசிரியர்களால் மட்டுமே பதிப்புரிமை பெற்றிருக்க வேண்டும் என்று முடிவு செய்யப்பட்டது.
API மற்றும் DLL லைப்ரரி கோப்பு (winsock.dll) ஆகியவற்றுக்கு இடையே நிறைய குழப்பங்கள் இருந்ததால், அனைத்து பங்கேற்பாளர் டெவலப்பர்களும் நீண்ட காலமாக வின்சாக் என்ற பெயரை சுருக்கி மறுத்துவிட்டனர். கணினியில் DLL கோப்பு இருப்பதை உறுதிசெய்வது மட்டுமே முழுமையான TCP/IP நெறிமுறை ஆதரவை வழங்கும் என்று பொதுவாக நம்பப்படுகிறது.
வின்சாக் தொழில்நுட்பம்
விண்டோஸ் சாக்கெட் ஏபிஐ விவரக்குறிப்பு இரண்டு இடைமுகங்களை வரையறுக்கிறது: அப்ளிகேஷன் டெவலப்பர்களால் பயன்படுத்தப்படும் ஏபிஐ மற்றும் நெட்வொர்க் மென்பொருள் உருவாக்குநர்கள் கணினியில் புதிய நெறிமுறை தொகுதிகளைச் சேர்க்கும் முறையை வழங்கும் எஸ்பிஐ. ஒவ்வொரு இடைமுகமும் ஒரு ஒப்பந்தத்தைக் குறிக்கிறது.
எந்தவொரு பிணைய மென்பொருள் விற்பனையாளரின் இணக்கமான நெறிமுறை செயலாக்கத்துடன் இணக்கமான பயன்பாடுகள் சாதாரணமாக இயங்கும் என்று API உத்தரவாதம் அளிக்கிறது. SPI ஒப்பந்தம், இணக்கமான நெறிமுறை தொகுதிகளை விண்டோஸில் சேர்க்க முடியும் என்று உத்தரவாதம் அளிக்கிறது, இதனால் அவை API-இணக்கமான பயன்பாடுகளால் பயன்படுத்தப்படலாம்.
விண்டோஸ் சாக்கெட்டுகள் முதன்முதலில் வெளியிடப்பட்டபோது இந்த ஒப்பந்தங்கள் முக்கியமானவை என்றாலும், அவை இப்போது கல்வி முக்கியத்துவம் வாய்ந்தவை, ஏனெனில் நெட்வொர்க் சூழலுக்கு பல நெறிமுறை ஆதரவு தேவைப்படுகிறது. விண்டோஸ் சாக்கெட்ஸ் API பதிப்பு 2.0 ஆனது IPX/SPX ஐப் பயன்படுத்தும் செயல்பாட்டை உள்ளடக்கியது, இருப்பினும் WSA 2.0 தொழிற்சாலையை விட்டு வெளியேறியபோது இந்த நெறிமுறை கிட்டத்தட்ட வழக்கற்றுப் போனது.
விண்டோஸ் சாக்கெட்ஸ் குறியீடு மற்றும் வடிவமைப்பு BSD சாக்கெட்டுகளை அடிப்படையாகக் கொண்டது, ஆனால் API வழக்கமான விண்டோஸ் நிரலாக்க மாதிரிக்கு இணங்க அனுமதிக்க கூடுதல் அம்சங்கள் வழங்கப்படுகின்றன.
விண்டோஸ் சாக்கெட்ஸ் ஏபிஐ கிட்டத்தட்ட பிஎஸ்டி சாக்கெட்ஸ் ஏபிஐயின் அனைத்து அம்சங்களையும் உள்ளடக்கியது, ஆனால் சில தவிர்க்க முடியாத தடைகள் உள்ளன, அவை முக்கியமாக விண்டோஸ் மற்றும் யூனிக்ஸ் இடையேயான அடிப்படை வேறுபாடுகளால் ஏற்படுகின்றன (இருப்பினும் விண்டோஸ் சாக்கெட்டுகள் மற்றும் பிஎஸ்டி சாக்கெட்டுகளுக்கு இடையிலான வித்தியாசம் வித்தியாசத்தை விட குறைவாக இருந்தது. பிந்தைய மற்றும் ஸ்ட்ரீம்ஸ்).
இருப்பினும், விண்டோஸ் சாக்கெட்டுகளின் வடிவமைப்பு இலக்கு டெவலப்பர்கள் யுனிக்ஸ் முதல் விண்டோஸுக்கு சாக்கெட் அடிப்படையிலான பயன்பாடுகளை போர்ட் செய்வதை ஒப்பீட்டளவில் எளிதாக்குவதாகும். புதிதாக எழுதப்பட்ட விண்டோஸ் நிரல்களுக்கு மட்டுமே பயனுள்ளதாக இருக்கும் APIகளை உருவாக்கினால் போதாது.
எனவே, விண்டோஸ் சாக்கெட்டுகள் போர்டிங் வசதிக்காக வடிவமைக்கப்பட்ட பல கூறுகளைக் கொண்டிருந்தன. எடுத்துக்காட்டாக, யூனிக்ஸ் பயன்பாடுகள் நெட்வொர்க் பிழைகள் மற்றும் நிலையான சி லைப்ரரி செயல்பாடுகளில் கண்டறியப்பட்ட பிழைகளை பதிவு செய்ய அதே பிழை மாறியைப் பயன்படுத்தலாம்.
விண்டோஸில் இதை செயல்படுத்த முடியாது என்பதால், பிழைத் தகவலைப் பெற, விண்டோஸ் சாக்கெட்ஸ் ஒரு சிறப்புச் செயல்பாட்டை அறிமுகப்படுத்தியது, WSAGetLastError(). அத்தகைய வழிமுறை மிகவும் பயனுள்ளதாக இருந்தது, ஆனால் பயன்பாட்டு போர்ட்டிங் இன்னும் மிகவும் சிக்கலானதாக இருந்தது.
பல பழமையான டிசிபி/ஐபி பயன்பாடுகள் யூனிக்ஸ் (போலி டெர்மினல்கள் மற்றும் ஃபோர்க் சிஸ்டம் கால்கள் போன்றவை) குறிப்பிட்ட கணினி அம்சங்களைப் பயன்படுத்தி செயல்படுத்தப்பட்டுள்ளன, மேலும் இந்தச் செயல்பாட்டை விண்டோஸில் மீண்டும் உருவாக்குவது சிக்கலாக இருந்தது. ஒப்பீட்டளவில் குறுகிய காலத்தில், போர்டிங் பிரத்யேக விண்டோஸ் பயன்பாடுகளின் வளர்ச்சிக்கு வழிவகுத்தது.
Winsock இன் செயலாக்கங்கள்
- மைக்ரோசாப்ட் Winsock 1.0 செயல்படுத்தலை வழங்கவில்லை.
- Winsock இன் பதிப்பு 1.1 ஆனது பணிக்குழுக்களுக்கான Windows க்கான (Wolverine எனப்படும்) கூடுதல் தொகுப்பில் வழங்கப்பட்டது (குறியீடு Snowball).
- Winsock பதிப்பு 2.1 விண்டோஸ் 95க்கான கூடுதல் தொகுப்பில் வழங்கப்பட்டது.
- Winsock 2.x இன் சமீபத்திய பதிப்பு புதிய Windows பதிப்பு அல்லது சேவைப் பொதியின் ஒரு பகுதியாக வழங்கப்பட்டுள்ளது.
- அடுக்கு சேவை வழங்குநர் (LSP) எனப்படும் ஒரு பொறிமுறையின் மூலம் Winsock 2 நீட்டிக்கப்படலாம்.