Computer (52) 썸네일형 리스트형 3.5 connection-oriented transport : TCP - point-to-point : 하나의 sender -> 하나의 receiver - reliable, in-order byte stream : 순서에 맞춰 전송 - TCP congestion, flow control이 window size 결정 - bi-directional data flow : 양방향 통신 - handshaking : data exchange하기 전 -flow controlled - segment : transport layer에서 전송되는 단위 - sequence number : 전송되는 data 몇 byte째 인지 - acknowledgement number : 몇 번째 byte를 받아야 하는지 - checksum : flag * 순서대로 들어오지 않는 segment를 어떻게 처리.. 3.4 principles of reliable data transfer application layer에서 transport layer로 data를 전송할 때 reliable한 channel이면 그냥 data를 전송하면 된다(loss 발생하 지 않으니까). 하지만 unreliable한 channel이라면 추가적인 method들이 필요할 것이다(loss 발생을 알기 위해) : rdt reliable 하려면 이런 method들이 필요할 것이다 - rdt_send() : 위의 layer(application layer)에 의해 호출되어 receiver의 upper layer에 전달하기 위한 정보를 전송하는 method - udt_send() : rdt에 의해 호출되어 unreliable channel을 통해 receiver로 packet 전달하기 위한 method - rdt_rc.. 3.3 connectionless transport : UDP(Use Datagram Protocol) : 비연결형 서비스로 datagram방식. 속도 TCP보다 빠름 - loss 발생 가능 - 순서 상관없이 전송(data만 destination part로 전송) - UDP server와 receiver 사이 handshaking없음 - 각각 UDP segment 서로 다른 경로로 독립적으로 처리 - 스트리밍 미디어, DNS, SNMP 등에 많이 사용 - no connection establishment - small header size - congestion control이 없다 - checksum으로 error여부 판단 : 전송된 segment에서 error를 찾기 위해 [seader] - segment를 header field를 포함하여 연속된 16bit int형태로 표현 - 1's compleme.. 3.2 multiplexing and demultiplexing - multiplexing(sender) : 여러 socket들에 있는 data 어떻게 취합해서 보낼 것인지 transport header에 추가(어떤 socket과 연결되어 있는지 정보 제공) - demultiplexing(receiver) : header info를 사용해 segment들을 어떤 socket으로 전송해야 하는지 - host는 'IP datagram'을 받는다 - datagram에는 source IP 주소, destination IP 주소가 있다 - 각 datagram은 하나의 transport-layer segment를 전송한다 - 각 segment는 source port number, destination port number를 가지고 있다 => host는 IP address와 po.. 3.1 transport-layer service - 서로 다른 host에서 수행되는 app process간의 logical communication 제공(end - end transport) - 물리적으로는 host끼리 연결되어있음 - 보내는 쪽 : messages를 segment단위로 network layer에 전달(network layer에서는 datagram이라고 함) - 받는 쪽 : segment들을 message로 조합해서 application layer에 전달 - 대표적인 internet transport-layer protocol로 TCP, UDP가 있다 [tranport layer] - process끼리 logical communication [network layer] - host끼리 logical communication (예시) 5.. 3.5 CPU 명령어 -> 회사마다 다름 : 특정 CPU를 위해 정의되는 명령어들 집합 - ISA(Instruction Set Architecture) : 명령어 세트 구조 [명령어 세트 설계 시 고려 사항] - 명령어 형식 - 주소지정 방식 - 연산의 종류 - 데이터 타입 - 산술연산(arithmetic operation) 명령 - 논리연산(logic operation) 명령 - 데이터 처리 및 메모리 연산 명령 : 데이터 입출력, 로드(memory->CPU), 저장(CPU->memory) 실행 - 흐름제어 연산(control flow operation) 명령 : 프로그램 실행순서 바꾸는 명령 실행 - op code(연산코드 필드) : 연산의 동작 지정 - operand(오러팬드 필드) : 연산의 대상, 위치 표시 ex) .. 3.4 연산장치 : 산술연산과 논리연산이 이루어지는 부분 [구성요소] - 상태 레지스터(status register) - 2's complementer - 산술연산장치 - 논리연산장치 - shift register -> 비트 열 이동 - AC(누산기) 이용하는 이유 : 한정된 General purpose register 사용 갯수 줄임 ADD AC, B 어셈블리 명령어 정의해보자 AC = AC + B; - 단일버스 구조는 3단계 연산 필요 1. TEMP1 0, 불가능 -> 1 - 특수권한 : 관리자 모드면 세트 3.3 레지스터 - AC(accumulator) : 연산에 가장 빈번하게 사용, 연산 결과를 다시 자신에게 누적 - PC(program counter) : 다음에 인출해올 명령어의 주소 저장 - MAR(memory address register) : 주소버스로 주소를 출력하기 전에 임시로 저장 - MBR(memory buffer register) : 데이터버스로 데이터를 읽고 쓸 때 임시로 저장 - IR(instruction register)명령 레지스터 : 가장 최근에 인출된 명령어 저장 - GPR(general purpose register)기타 범용 레지스터 : 연산 도중 일시적인 기억장소로 사용 이전 1 2 3 4 5 6 7 다음