1. TCP/IP е група протоколи, която може да бъде разделена на три слоя: мрежов слой, транспортен слой и приложен слой.
В мрежовия слой има IP протокол, ICMP протокол, ARP протокол, RARP протокол и BOOTP протокол.
В транспортния слой има TCP протокол и UDP протокол.
В приложния слой има протоколи като FTP, HTTP, TELNET, SMTP и DNS.
Следователно самият HTTP е протокол, предавателен протокол за предаване на хипертекст от уеб сървър към локален браузър.
2. HTTP протоколът се основава на модела заявка/отговор. Първо, клиентът установява TCP връзка със сървъра и изпраща заявка до сървъра, която включва метода на заявката, URI, версията на протокола и свързаните съобщения в MIME стил. Сървърът отговаря с ред за състояние, съдържащ версията на протокола на съобщението, код за успех и неуспех и свързания MIME стил на съобщението.
HTTP/1.0 установява нова TCP връзка за всяка HTTP заявка/отговор, така че страница, съдържаща HTML съдържание и снимки, ще трябва да установи множество краткосрочни TCP връзки. Установяването на TCP връзка ще изисква 3 ръкостискания.
Освен това, за да получи подходящата скорост на предаване, TCP трябва да изразходва допълнително време за двупосочно свързване (RTT). Установяването на всяка връзка изисква този вид редовни разходи и не носи действителни полезни данни, а само гарантира надеждността на връзката. Следователно HTTP/1.1 предлага устойчив метод за внедряване на връзки. HTTP/1.1 ще установи TCP връзка само веднъж и ще я използва многократно, за да предаде поредица от съобщения за заявка/отговор, като по този начин ще намали броя на установяванията на връзка и редовното натоварване на връзката.

3. Заключение: Въпреки че самият HTTP е протокол, той в крайна сметка се основава на TCP. Понастоящем обаче някои хора изучават HTTP протокола, базиран на сместа TCP+UDP.
Какво е Socket?
Socket е междинен слой на софтуерна абстракция за комуникация между приложния слой и фамилията TCP/IP протоколи и представлява набор от интерфейси. В режима на проектиране, Socket всъщност е фасаден режим, който скрива сложното TCP/IP протоколно семейство зад интерфейса на Socket. За потребителите набор от прости интерфейси е всичко, а Socket организира данните, за да отговарят на посочения протокол.





