www.fatihkabakci.com

Personal Website and Computer Science TUR EN

TCP IP MODELI

Last update: 10/31/2012 4:16:00 AM

Yazan:Fatih KABAKCI

TCP/IP(Transmission Control Protocol/Internet Protocol),ilk olarak 1970 yılında ARPA(Advance Research Projects Agency) tarafından çıkarılmış olan ARPANET'in protokol yapısı incelenirken geliştirilmiştir.ARPA Amerikan Savunma Teşkilatına bağlı bir araştırma kurumudur.Bu nedenden ötürü TCP/IP modeli DoD(Department of Defence) modeli olarak da bilinir.Internet TCP/IP modeline göre geliştirilmiştir.

TCP/IP OSI(Open systems interconnection) gibi standart bir başvuru modeli değildir.Ancak bir çok protokol kullandığı için özellikle mevcut protokollerin tanımlanmasında önemli bir model olarak ortaya çıkmıştır.TCP/IP Physical(Fiziksel),Network Access(Ağ'a erişim),Internet,Transport(Ulaşım) ve Application(Uygulama) olmak üzere 5 katmana sahiptir ve her bir katmanın görevi aşağıda açıklanmaktadır.

Physical Layer

Physical Layer(Fiziksel Katman) hardware(donanım) bağlantılarının kurulması,çözülmesi ve iletişim sırasında sağlıklı olarak kullanılması gibi konuları içermektedir.TCP/IP'nin 1.katmanı olan physical layer,bir takım hardware bileşenlerinin doğru olarak bağlanmasının denetimi,bağlantıların kaç uçlu bağlayıcılar ile yapılacağı ve bu uçlardan hangilerinin hangi işlemler de kullanılacağı gibi görevlere sahiptir.

Physical layer ayrıca taraflar arasında yapılacak iletişimin türünü de belirler.
  • Simplex,iletişimin tek yönlü yapıldığı türdür.Örneğin;Bebek cihazları.
  • Half Duplex,iletişimin aynı anda tek yönde yapıldığı türdür.Örneğin;Polis telsizleri.
  • Full Duplex,ietişimin aynı anda çift yönde yapılabildiği türdür.Örneğin;Telefonlar

Network Access Layer

Network Access Layer(Ağ'a Erişim Katmanı),veri bağlantılarının yönetimini yürütür.TCP/IP'nin 2.katmanı olan network access layer,priority,adressing,error control,flow control,framing ve synchronization gibi görevleri gerçekleştirir.Bu görevlerin her biri aşağıda açıklanmaktadır.
  • Priority,gönderilecek paketlerin önceliklerini belirleme işlemidir.
  • Adressing,veriyi adresleme görevidir.Alıcıya gönderilecek veri için DLCI(Data Link Connection Identifier) belirlenir.DLCI bilgisi,verinin hangi servis erişim noktasına(SAPI,Service Access Point Identifier) ve hangi uç birime(TEI,Terminal Endpoint Identifier) gideceği bilgilerini içerir.

  • Error Control,verinin doğru bir şekilde iletildiğinin anlaşılması adına veriye eklenen kontrol bilgilerinin veriye dahil edilme görevidir.Humming code,parity code,CRC(Cyclic Redundancy Check) gibi kodlama teknikleri ile verinin hata kontrolü sağlanır.
  • Flow Control,verici ile alıcı arasındaki veri gönderme-alma hızının belirli bir eşik seviyeye getirilme işlemidir.Vericinin veriyi gönderme hızı,alıcının alma hızını geçmemelidir.
    VG <= VA
    
  • Framing,ağ katmanından gelen veriye link header'inin eklenme işlemidir.Senkronizasyon için yarar sağlar.
  • Synchronization,gönderici ile alıcı arasındaki bilgisayarların saat frekansını senkron tutma işlemidir.
Network access katmanı daha çok verinin doğru bir şekilde alıcıya ulaşmasından sorumlu bir katmandır.

Internet Layer

Internet Layer(İnternet Katmanı),network bağlantılarının yönetiminden sorumlu katmandır.TCP/IP'nin 3.katmanı olan Internet layer,charging(ücretlendirme),multiplexing(çoğullama) gibi görevleri üstlenir.Internet katmanı Paket anahtarlamalı Network(Packet Switching Network) özelliğine sahip bir katmandır ve counting(paket sayma) işlemlerini yürütür.Verileri IP paketlere ayırarak gönderir.Bu görevlerin her biri aşağıda açıklanmaktadır.
  • Charging,gönderilen paketlerin sayılması(counting) işlemlerinin ücretlendirilmesidir.
  • Multiplexing,bir iletim ortamı üzerinden aynı anda bir den fazla iletişim sağlanabilmesi işlemidir.
  • Routing,paketlerin doğru noktalara yönlendirilmesini sağlayan işlemdir.
  • Congestion Control,ağ'ın taşıyabileceği veri miktarının aşılması durumunda ortaya çıkan network tıkanıklığı probleminin denetlenme işlemidir.

Transport Layer

Transport Layer(Ulaşım Katmanı),source ve destination arasındaki iletişimi en verimli şekilde yöneten TCP/IP 4.katmanıdır.Flow control,multiplexing,sequence control,segmentation ve reassembly gibi görevleri üstlenir.Aşağıda her bir görev açıklanmaktadır.
  • Flow Control,alıcı ve verici arasındaki clock pulse ayarlama işlemidir.
  • Multiplexing,iletişim ortamının bir den fazla kullanıcıya paylaştırılması işlemidir.
  • Sequence Control,gönderilen her bir frame'e sıra numaları verilme işlemidir.
  • Segmentation ve Reassembly,paketlerin parçalara ayrılması ve birleştirilmesi işlemleridir.
  • Error Control,taşınacak verinin hata denetim işlemidir.
Transport layer,güvenilir ve güvenilir olmayan iki tip protokol kullanır.TCP protokolü connection-oriented yani bağlantılı olan güvenilir bir servistir.Ancak güvenilirliğin önemli olmadığı durumlarda, connectionless yani bağlantısız olan UDP(User Datagram Protocol) protokolü kullanılır.

Application Layer

Application Layer(Uygulama Katmanı),verilerin ağa aktarılmasını sağlayan programların yönetiminden sorumlu olan TCP/IP 5.katmanıdır.Endpoint kullanıcılarının birbirleri ile haberleşmek için kullandıkları yazılım katmanıdır.Gönderici bir veri göndereceği zaman ilk olarak bu katmanı kullanır.TCP/IP 5.katmanı,OSI 5,6 ve 7.katmanlarını birlikte servis eder.

Uygulama katmanının görevleri aşağıda açıklanmaktadır.

  • Opening/Closing Session,mevcut oturumların açılması ve sonlandırılması işlemleridir.
  • Recover,kesilen bağlantıların onarılması işlemidir.
  • Data Compression/Decompression,verinin boyutunu küçültmek ve eski haline getirmek için yapılan sıkıştırma ve açma işlemleridir.
  • Data Encryption/Decryption,güvenlik adına verinin şifrelenmesi ve çözümlenmesi işlemleridir.
  • Coding,veri formatını ayarlama işlemidir.Data Syntax'ı bu katmanda belirlenir.
Uygulama katmanı kullandığı her program için ayrı bir protokol uygulamaktadır.Bu nedenle TCP/IP çok sayıda protokoller kullanmaktadır.Bu neden ağ tasarımı için bir model değil,daha çok protokollere uygun bir başvuru modeli olmuştur.
There has been no comment yet

Name:


Question/Comment
   Please verify the image




The Topics in Computer Science

Search this site for





 

Software & Algorithms

icon

In mathematics and computer science, an algorithm is a step-by-step procedure for calculations. Algorithms are used for calculation, data processing, and automated reasoning.

Programming Languages

icon

A programming language is a formal constructed language designed to communicate instructions to a machine, particularly a computer. It can be used to create programs to control the behavior of a machine. Java,C, C++,C#

Database

icon

A database is an organized collection of data. The data are typically organized to model aspects of reality in a way that supports processes requiring information.

Hardware

icon

Computer hardware is the collection of physical elements that constitutes a computer system. Computer hardware refers to the physical parts or components of a computer such as the monitor, memory, cpu.

Web Technologies

icon

Web development is a broad term for the work involved in developing a web site for the Internet or an intranet. Html,Css,JavaScript,ASP.Net,PHP are one of the most popular technologies. J2EE,Spring Boot, Servlet, JSP,JSF, ASP

Mobile Technologies

icon

Mobile application development is the process by which application software is developed for low-power handheld devices, such as personal digital assistants, enterprise digital assistants or mobile phones. J2ME

Network

icon

A computer network or data network is a telecommunications network that allows computers to exchange data. In computer networks, networked computing devices pass data to each other along data connections.

Operating Systems

icon

An operating system is software that manages computer hardware and software resources and provides common services for computer programs. The OS is an essential component of the system software in a computer system. Linux,Windows

Computer Science

icon

Computer science is the scientific and practical approach to computation and its applications.A computer scientist specializes in the theory of computation and the design of computational systems.