Увод у Винсоцк, укључујући позадину и технологију
Introduction Winsock Including Background Technology
Овај пост углавном говори о Виндовс Соцкетс АПИ-ју, који се може скратити на ВСА и Винсоцк. Након што прочитате овај пост, можете сазнати његову дефиницију, позадину, технологију, као и имплементације.
На овој страници :Дефиниција за Винсоцк
Шта је Винсоцк? У рачунарству, Винсоцк је техничка спецификација која се користи да дефинише како Виндовс мрежни софтвер треба да приступа мрежним услугама, посебно ТЦП /ИП. Зове се Винсоцк јер је адаптација Беркелеи УНИКС соцкет интерфејса за Виндовс. Соцкет је посебан уговор који се користи за повезивање и размену података између два програмска процеса на истом рачунару или мрежи.
Винсоцк је скраћеница од Виндовс Соцкетс АПИ (ВСА). Дефинише стандардни интерфејс између Виндовс ТЦП/ИП клијентских апликација (као што су ФТП клијенти или веб претраживачи) и основног стека ТЦП/ИП протокола.
Повезани пост: Користите Нетсх Винсоцк Ресет команду да бисте решили проблем са мрежом Виндовс 10
Позадина Винсоцка
Виндовс Соцкетс АПИ је предложио Мартин Хол из ЈСБ Софтваре-а (касније Стардуст Тецхнологиес) у дискусији о БоФ (Бирд оф а Феатхер) на ЦомпуСерве ББС мрежи у октобру 1991. године.
Прву верзију спецификације написали су Мартин Хол, Марк Тоуфик из Мицродине-а (касније Сун Мицросистемс), Геофф Арнолд из Сун Мицросистемс-а и Хенри Сандерс и Ј Аллард из Мицрософта уз помоћ многих других.
Било је неких дискусија о томе како најбоље решити ауторска права, интелектуалну својину и потенцијална антимонополска питања, као и разматрање рада кроз ИЕТФ или оснивање непрофитних фондација. На крају је одлучено да спецификација треба да буде заштићена ауторским правима само пет (неповезаних) аутора.
Сви програмери који су учествовали дуго су одбијали да скрате назив на једноставно Винсоцк јер је било доста забуне између АПИ-ја и датотеке ДЛЛ библиотеке (винсоцк.длл), што је само изложило општи ВСА интерфејс апликацији изнад њега. Уопштено се верује да само обезбеђивање постојања ДЛЛ датотеке у систему може пружити потпуну подршку ТЦП/ИП протокола.
Винсоцк технологија
Виндовс Соцкет АПИ спецификација дефинише два интерфејса: АПИ који користе програмери апликација и СПИ који обезбеђује метод за програмере мрежног софтвера да додају нове модуле протокола систему. Сваки интерфејс представља уговор.
АПИ гарантује да усаглашене апликације могу нормално да раде са имплементацијом усклађеног протокола било ког добављача мрежног софтвера. СПИ уговор гарантује да се модули усаглашених протокола могу додати у Виндовс тако да их могу користити апликације усаглашене са АПИ-јем.
Иако су ови уговори били важни када су Виндовс Соцкетс први пут објављени, они су сада од само академског значаја јер мрежно окружење захтева подршку за више протокола. Виндовс Соцкетс АПИ верзија 2.0 укључује функцију коришћења ИПКС/СПКС, иако је овај протокол био скоро застарео када је ВСА 2.0 изашао из фабрике.
Код и дизајн Виндовс сокета засновани су на БСД утичницама, али су обезбеђене додатне функције које омогућавају АПИ-ју да буде у складу са конвенционалним моделом Виндовс програмирања.
Виндовс Соцкетс АПИ је скоро покрио све карактеристике БСД сокета АПИ-ја, али постоје неке неизбежне препреке, које су углавном узроковане фундаменталним разликама између Виндовс-а и Уник-а (иако је разлика између Виндовс сокета и БСД сокета била мања од разлике између потоњи и ПОТОЦИ).
Међутим, циљ дизајна Виндовс сокета био је да програмерима олакша пренос апликација заснованих на сокету са Уник-а на Виндовс. Није било довољно креирати АПИ-је који су били корисни само за новонаписане Виндовс програме.
Стога су Виндовс утичнице садржале многе елементе дизајниране да олакшају пренос. На пример, Уник апликације могу да користе исту еррно променљиву за евидентирање мрежних грешака и грешака откривених у стандардним функцијама библиотеке Ц.
Пошто се не може имплементирати у Виндовс-у, Виндовс Соцкетс су увели специјалну функцију, ВСАГетЛастЕррор(), за преузимање информација о грешци. Такав механизам је био од велике помоћи, али је пренос апликација и даље био изузетно компликован.
Многе примитивне ТЦП/ИП апликације су имплементиране коришћењем системских карактеристика специфичних за Уник (као што су псеудо терминали и форк системски позиви), и било је проблематично репродуковати ову функцију у Виндовс-у. За релативно кратко време, портовање је уступило место развоју наменских Виндовс апликација.
Имплементације Винсоцк-а
- Мицрософт није обезбедио имплементацију Винсоцк 1.0.
- Верзија 1.1 Винсоцк-а је обезбеђена у пакету додатака (названом Волверине) за Виндовс за радне групе (кодни назив Сновбалл).
- Винсоцк верзија 2.1 је обезбеђена у пакету додатака за Виндовс 95.
- Најновија верзија Винсоцк 2.к је обезбеђена са новом верзијом Виндовс-а или као део сервисног пакета.
- Винсоцк 2 се може проширити путем механизма који се зове Лаиеред Сервице Провидер (ЛСП).