Najpierw musimy zacząć od zrozumienia działania sieci komputerowej, ponieważ wszystko w niej tzn. przepływ danych odbywa się za pomocą protokołu Ipv4. Każda sieć komputerowa składa się oprócz kabli, routerów itp. z hostów. Na wstępie możemy przyjąć że host to komputer, ale jest to duże uproszczenie. Każdy host posiada swój adres czyli numer IP, dzięki temu mogą się wzajemnie komunikować i przesyłać między sobą dane. Odbywa się to za pomocą protokołów IP. Jest też coś takiego jak TCP i UDP, to także sa protokoły na wyższej warstwie, odpowiadają one za przekazywanie numerów portów. Dzięki temu pod jednym numerem IP może być uruchomionych wiele usług. Każdy z tych pakietów jest klasyfikowany i tak przyjęło się że portowi 80 odpowiada usługa HTTP itd. Pierwszy z protokołów jest protokołem strumieniowym, polega to na tym że jeśli mają być przesłane jakieś dane to najpierw musi nastąpić połączenie, gwarantuje też on odbiór danych w takiej kolejności w jakiej zostały one wysłane. TCP odpowiada także za ponowne wysłanie pakietu jeśli poprzedni został utracony. UDP jest zupełnie innym pakietem, nie ma pewności że pakiety dojdą w takiej kolejności w jakiej zostały wysłane a w ogóle nie wiadomo czy dojdą. dla celów komunikacji stworzono dwa rodzaje akcji jest to nasłuch i działanie logiczne.