W świadomości wielu eCommerce i Internet są nierozłączne. Chociaż jest to zbyt prosty pogląd, nie ma wątpliwości, że technologie, aplikacje i standardy związane z Internetem dominują we wdrażaniu aplikacji e-biznesowych i prawie we wszystkich przypadkach przynajmniej jedna część łańcucha procesów będzie prowadzona przez sieci działające na protokołach internetowych. Ale najpierw powinniśmy uznać, że nie ma czegoś takiego jak Internet. Prawdziwym terminem jest „internet”, działalność, a nie jednostka, aktywność łączenia ze sobą kilku sieci i części zestawu, w celu zapewnienia pewnych możliwości transmisji typu end-to-end. Pragnienie, aby to zrobić, pierwotnie pojawiło się w wyniku zbieżności dwóch wyraźnie różnych nurtów myśli dotyczących sieci komputerowych. Jedną z nich była inicjatywa Departamentu Obrony USA, której celem było opracowanie rozwiązań, które zapewniłyby przetrwanie łączności w czasie ataku nuklearnego. Drugim był rynek komercyjny, który szukał opłacalnych rozwiązań dla szerokopasmowego połączenia między sieciami lokalnymi o bardzo niejednorodnym charakterze. Internet zawdzięcza swoje pozytywne i negatywne cechy tym bliźniaczym pragnieniom. W odniesieniu do kwestii przeżywalności: wojsko USA obawiało się, że konwencjonalne sieci telefoniczne, które obejmowały połączenia hierarchiczne za pośrednictwem scentralizowanych central telefonicznych, są podatne na ataki. Zaproponowano zatem, aby przesyłane dane były dzielone na małe pakiety (lub datagramy), każdy pakiet był oznaczony swoim numerem seryjnym, źródłem i miejscem docelowym, a pakiety były niezależnie odpalane w sieci. Tak więc, gdyby jedna część sieci miała zostać zniszczona, można by określić, które pakiety zostały utracone i szybko znaleźć nową trasę, którą można by je ponownie wysłać. Protokół służący do osiągnięcia tego celu, protokół internetowy (IP), zajmuje się dostarczaniem pakietów „z najlepszymi staraniami”. W zależności od zaistniałych warunków może nie dostarczyć, może dostarczyć więcej niż jedną kopię pakietu, może dostarczać pakiety w dowolnej kolejności i mogą one zawierać błędy. Aby spełnić to wymaganie do przetrwania w przedstawionych powyżej realiach komercyjnych, IP dzieli dane na datagramy o zmiennej długości do 64 KB (chociaż w praktyce mają one zwykle około 1000-2000 bajtów). Te pakiety danych są często dalej dzielone przez interweniujące sieci na mniejsze „fragmenty”, aby dopasować je do lokalnych ograniczeń dotyczących maksymalnego rozmiaru. Te fragmenty nie są ponownie łączone, dopóki nie dotrą do miejsca przeznaczenia, a jednym ze złożonych zadań protokołów internetowych jest dodanie do tych fragmentów dodatkowych informacji o adresowaniu i porządkowaniu, aby można je było pomyślnie dostarczyć i ponownie uporządkować. Każdy host („komputer”) i każdy router w Internecie ma unikalny adres, zwany jego adresem IP. Jest to 32-bitowy adres, który jest dołączany do datagramów w celu wskazania źródła i miejsca docelowego pakietu
Adres składa się z dwóch części: jedna część identyfikuje sieć, do której należy host, a druga część to unikalny numer w tej sieci. Sieci różnią się wielkością i złożonością, niektóre są „prywatne”, np. sieć kampusów uniwersyteckich, inne są zapewniane przez władze regionalne lub krajowe. Wszystkie sieci uzyskują swój adres IP od scentralizowanego organu, Network Information Centre. Sieci i adresy sieciowe można również podzielić na „podsieci”, co pomaga w administrowaniu systemem i umożliwia rozszerzenie zakresu numerów, a nie w taki sposób, że numery telefonów zawierają kod lokalny, regionalny i krajowy. Kody są zwykle wyrażane w oktetach, aby były łatwiejsze do odczytania. Routery przechowują tablice zawierające informacje o niektórych (ale nie wszystkich) innych sieciach w Internecie, a także o niektórych adresach do podsieci i hostów we własnej sieci. Istnieje kilka sposobów tworzenia tych tabel. W przypadku małych sieci możliwe jest ręczne ustawienie tych informacji. W przypadku większych sieci istnieje wiele zautomatyzowanych metod, dzięki którym routery uzyskują te informacje stopniowo, obserwując przechodzące przez nie dane. Mogą również okresowo wysyłać prośby do swoich sąsiadów, prosząc ich o zwrócenie informacji, z kim są połączeni. Załóżmy teraz, że pakiet dociera do routera
Router porównuje adres docelowy pakietu z tabelą i może być w stanie wysłać go bezpośrednio do lokalnej sieci LAN, w której znajduje się host docelowy. Jeśli pakiet jest przeznaczony dla sieci zdalnej, router wyśle go do następnego routera zalecanego w tabeli. Zauważ, że router niekoniecznie wysyła pakiet najbardziej bezpośrednią trasą; może po prostu wysłać go do domyślnego routera, który ma większy zestaw tabel. W pokazanym przykładzie adres docelowy pakietu 7.7.7.1 nie będzie pasował do następnej ścieżki oznaczonej jako 7.7.7.99, ale pasuje do ścieżki oznaczonej jako 7.7.7.0, czyli ścieżki 2. Jeśli ścieżka 2 nie istnieje i nie ma kompletne dopasowanie, wtedy zostałaby wybrana domyślna ścieżka 0.0.0.0. Ze względu na wymóg odporności na atak zdecydowano, że w każdym węźle w sieci (np. gdy router łączy poszczególne podsieci różnych organizacji), trasowanie w celu przekazania każdego pakietu dalej do następnego węzła będzie obliczane lokalnie , na podstawie wiedzy o tym, co działo się w pobliżu węzła (na przykład, która trasa z niego była najmniej zajęta i nie została zniszczona). Pakiety w końcu dotarłyby do zamierzonego miejsca przeznaczenia, pod warunkiem, że w ogóle istniała trasa, chociaż mogły dotrzeć w dowolnej kolejności i doświadczyć znacznego opóźnienia. Ważne jest, aby zdać sobie sprawę, że nie było intencją utrzymywania rejestru „najlepszego sposobu” od końca do końca w całej sieci. Pomysł na jakikolwiek półtrwały najlepszy sposób był sprzeczny z tym, co się stanie, gdy bomby zaczną spadać. Żadna trasa nie byłaby gwarantowana, aby przetrwać, a pakiety musiałyby znaleźć drogę przez sieć, której węzły ciągle się zapadały i były odbudowywane. Oprócz wojskowego imperatywu stworzenia sieci zdolnych do przetrwania, istniało szereg realiów komercyjnych: sieci komputerowe rozwijały się w duchu lokalnego świadczenia usług i na szybko zmieniającym się, konkurencyjnym, niestandardowym rynku. W konsekwencji nieuniknione było występowanie różnych protokołów komunikacyjnych i mało prób zapewnienia gwarantowanej jakości usług poza domeną lokalną. Również struktura danych nie jest zgodna z identycznymi układami. Istnieje wiele sposobów, w jakie sieci mogą się różnić, w tym sposób ich adresowania, maksymalny rozmiar pakietu, sposób obsługi błędów, sposób radzenia sobie z przeciążeniem węzłów i tak dalej. To, że możliwe jest osiągnięcie transmisji typu end-to-end w tego rodzaju złożoności (i spadających bomb!), jest dużym osiągnięciem, ale Internet to robi, chociaż nie bez nabywania mniej pożądanych właściwości. Pakiety mogą na przykład zniknąć w ślepym zaułku routerów, na stałe lub z dużym opóźnieniem. Pakiety mogą być dzielone na fragmenty przez heterogeniczne systemy o różnych długościach buforów przetwarzania; W niektórych przypadkach mogą być nawet generowane zduplikowane pakiety. W przypadku wielu wymagań nie jest to zadowalające, wymagamy jedynie protokołu, aby poinformować nas, na czym stoimy i kiedy poprosić o powtórzenie informacji.