목록콤퓨타 왕왕기초 (156)
파게로그
OSI(Open Systems Interconnection) 7 Layer 사용자 지원 계층 Application Layer Presentation Layer Session Layer 전송층 Transport Layer 네트워크 지원 계층 Network Layer Data Link Layer Physical Layer OSI 7 Layer와 TCP/IP의 차이 https://www.electronicdesign.com/unused/article/21800810/whats-the-difference-between-the-osi-sevenlayer-network-model-and-tcpip OSI 7 Layer로 나누는 이유 데이터의 흐름을 한 눈에 볼 수 있다. 문제 해결이 편리하다. 장비들 간의 호환성이..
UTP(Unshielded Twisted-Pair) cf. STP(Shielded Twisted-Pair): EMI(Electro Magnetic Interference)를 줄이기 위한 절연체로 감싸져 있음 카테고리별 카테고리1 주로 전화망에 사용 카테고리2 데이터 전송 (최대 4Mbps) 카테고리3 10 Base T 네트워크에 사용 최대 10Mbps (구성에 따라 최대 100Mbps가 가능하지만 실제론 드묾) 예전에는 UTP 케이블을 대표했었음 카테고리4 토큰링 네트워크에서 사용 최대 16Mbps 카테고리5 최대 100Mbps를 지원하는 Fast Ethernet용으로 사용되었음 기가비트 표준이 완성되면서 이를 통해서도 기가비트 속도의 데이터 전송 가능 카테고리6 (최근에 가장 많이 사용됨) 기가비트 이..
Unicast 현재 네트워크상에서 가장 많이 사용되는 통신 방식 특정 목적지의 주소 하나만을 가지고 통신하는 방식 목적지 주소가 아닌 다른 PC들의 CPU 성능을 저하시키지 않음(CPU에 인터럽트를 걸지 않고 랜카드가 이 프레임을 버림) Broadcast 로컬 랜(라우터에 의해서 구분된 공간. 브로드캐스트 도메인)에 붙어있는 모든 네트워크 장비들에게 보내는 통신 브로드캐스트의 주소는 FFFF.FFFF.FFFF로 정해져 있고, 이 주소에 한해서 랜카드는 자신의 맥 주소와 다르더라도 이 브로드캐스트 패킷을 CPU로 보낸다. 전체적인 트래픽 증가 및 이 패킷을 받은 모든 PC의 CPU 성능이 저하됨 ARP, 라우터끼리의 정보 교환, 다른 라우터를 찾을 때, 서버들이 자신이 어떤 서비스를 제공한다는 것을 모든 ..
인터넷의 프로토콜은 TCP/IP이므로 IP 주소만 사용하지 않을까 싶은데, 이 경우에도 ARP(Address Resolution Protocol)라는, IP 주소를 MAC 주소로 변환하는 절차를 밟아 실제로는 MAC 주소가 사용된다. MAC(Media Access Control) Address 네트워크에 사용되는 모든 기기의 고유 번호. 48bit(6octet, octet=8bit) 랜카드뿐만 아니라 그것을 포함하는 서버도, 그리고 라우터, 스위치 등 모든 기기가 MAC 주소를 가진다. 8자리마다 하이픈, 콜론, 온점을 통해 구분한다. // 0000 0000.0110 0000.1001 0111.1000 1111.0100 1111.1000 0110 MAC 주소의 표현 00-60-97-8F-4F-86 00:..
protocol A protocol defines the format and the order of messages exchanged between two or more communicating entities, as well as the actions taken on the transmission and/or receipt of a message or other event(Kurose, Ross Computer Networking: A Top-down Approach p.35). networking - 정의: 장비들을 서로 대화가 가능하도록 묶어주는 것 - 목적: 정보의 공유, 자원의 공유 Internet - 정의: 여러 개의 네트워크를 묶어놓은 네트워크 연합 - 특징: 하나의 프로토콜만 사용함(TCP..
문제 링크: 2293번 동전 1 https://www.acmicpc.net/problem/2293 dp[k]는 k원을 만드는 경우의 수를 나타낸다. 이 때 coins[0](엄밀히는 동전 중 임의의 한 개)만을 사용한다면, k가 coins[0]의 배수일 때에는 모두 1가지이므로 if k%coins[0]==0 dp[k]=1을 수행한다. 그 후, coins[1:](엄밀히는 처음에 선택한 동전을 제외한 다른 동전들)에 대해서, dp[k] += dp[k-coin]을 수행한다. coin만을 이용해서 만들 수 있는 경우의 수는 이미 dp[k]에 포함되어 있고, dp[k-coin]은 k-coin원에다가 coin을 이용해 coin만큼을 더해서 k를 만드는 경우의 수이므로 이 둘을 더해준다. import java.util..
문제 링크: 1520번 제목 https://www.acmicpc.net/problem/1520 P(i, j)가 (i, j)의 위치에서 출발지까지 가는 경로의 수를 나타낸다고 한다면 이는 다음과 같은 식으로 표현된다. P(i, j) = sum({P(k, l) | (k, l)은 (i, j)와 인접 & (k, l)은 (i, j)보다 고도가 높음}) P(i, j)의 초기값을 -1로 설정해두어서 방문 여부를 표시한다면, (i, j)를 방문한 경우 P(i, j)를 바로 사용하면 되며 이는 다시 계산할 필요가 없다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { ..
문제 링크: 11066번 제목 https://www.acmicpc.net/problem/11066 앞서 행렬의 곱 문제와 유사하다. 부분 문제의 해를 2차원 배열에 저장한다. 다만 여기서는 한 개짜리 파일을 두 개 합칠 때와 그렇지 않을 때의 계산 과정이 달라진다. merge_cost(A, B) = A.size + B.size merge_cost(AB, C) = merge_cost(A, B) + merge_cost(C) + size(AB) + size(C) 이를 고려하여 dp[i][1]과 dp[i][2]를 모두 미리 채운 후 dp 배열을 채워나간다. import java.util.Arrays; import java.util.Collections; import java.util.Scanner; import..