Microsoft MVP성태의 닷넷 이야기
스마트 클라이언트에서 원치 않는 패킷 송수신 문제... [링크 복사], [링크+제목 복사],
조회: 10922
글쓴 사람
테드 (jeidee at naver.com)
홈페이지
첨부 파일
 

안녕하세요.
스마트 클라이언트에 관해 쓰신 글을 읽고 회사 프로젝트에 적용해 개발중에 있습니다.

FarPoint사의 윈폼용 스프레드 컨트롤을 새로운 윈폼 컨트롤에 얹어 ASP.NET에서 사용중인데,
실제 웹서버에 사이트를 올리고 사용해보니,
셀을 이동할때마다 웹서버와 패킷을 송수신하여 성능이 급격히 떨어지는 문제가 발생했습니다.
네트워크 모니터로 모니터링해보니 셀을 이동할때 계속해서 웹서버와 패킷을 주고 받고 있었습니다.
짧은 소견으로는 스마트클라이언트와 웹서버간에 연결을 유지하기 위한 패킷으로도 생각되지만 잘 모르겠습니다.
웹페이지가 정상적으로 출력된 상태에서 오프라인을 시키면 당연히 웹서버와 패킷송수신이 없으므로
빠른속도록 셀 이동이나 편집이 가능해집니다.
하지만 다시 연결하면 패킷송수신이 시작되면서 속도가 급격히 떨어지구요.
조언 부탁드려요.


네트워크 모니터로 캡춰한 내용의 일부는 다음과 같습니다.

첫번째 유형:
클라이언트 -----------> 웹서버
    HTTP: GET Request (from client using port 3634)
    HTTP: Request Method = GET
    HTTP: Uniform Resource Identifier = /iexplore.exe.config
    HTTP: Protocol Version = HTTP/1.1
    HTTP: Accept = */*
    HTTP: Accept-Encoding = gzip, deflate
    HTTP: User-Agent = Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR
    HTTP: Host = ***.***.***.***
    HTTP: Connection = Keep-Alive
    ....

웹서버 -----------> 클라이언트
    .....
    HTTP: Response (to client using port 3634)
    HTTP: Protocol Version = HTTP/1.1
    HTTP: Status Code = Not found
    HTTP: Reason = Object Not Found
    HTTP: Server = Microsoft-IIS/5.0
    HTTP: Date = Fri, 22 Jul 2005 04:23:28 GMT
    HTTP: Connection = close
    HTTP: Content-Length = 3937
    HTTP: Content-Type = text/html
    HTTP: Data: Number of data bytes remaining = 1297 (0x0511)
    .....

두번째 유형:
클라이언트 ------------> 웹서버

TCP: .A.R.., len: 0, seq:3986502330-3986502330, ack:3662085292, win: 0, src: 3634 dst: 80
    TCP: Source Port = 0x0E32
    TCP: Destination Port = Hypertext Transfer Protocol
    TCP: Sequence Number = 3986502330 (0xED9D32BA)
    TCP: Acknowledgement Number = 3662085292 (0xDA46FCAC)
    TCP: Data Offset = 20 (0x14)
    TCP: Reserved = 0 (0x0000)
    TCP: Flags = 0x14 : .A.R..
        TCP: ..0..... = No urgent data
        TCP: ...1.... = Acknowledgement field significant
        TCP: ....0... = No Push function
        TCP: .....1.. = Reset the connection
        TCP: ......0. = No Synchronize
        TCP: .......0 = No Fin
    TCP: Window = 0 (0x0)
    TCP: Checksum = 0xC54E
    TCP: Urgent Pointer = 0 (0x0)
00000: 00 08 9F 02 AC 86 00 0F EA C0 8C 38 08 00 45 00 ..Ÿ.¬†..êÀŒ8..E.
00010: 00 28 F9 06 40 00 80 06 1D 15 C0 A8 00 64 D2 76 .(ù.@.€...À¨.dÒv
00020: 51 31 0E 32 00 50 ED 9D 32 BA DA 46 FC AC 50 14 Q1.2.Pí2ºÚFü¬P.
00030: 00 00 C5 4E 00 00 ..ÅN..


TCP: ....S., len: 0, seq:3292276979-3292276979, ack: 0, win:65535, src: 3635 dst: 80
    TCP: Source Port = 0x0E33
    TCP: Destination Port = Hypertext Transfer Protocol
    TCP: Sequence Number = 3292276979 (0xC43C28F3)
    TCP: Acknowledgement Number = 0 (0x0)
    TCP: Data Offset = 28 (0x1C)
    TCP: Reserved = 0 (0x0000)
    TCP: Flags = 0x02 : ....S.
        TCP: ..0..... = No urgent data
        TCP: ...0.... = Acknowledgement field not significant
        TCP: ....0... = No Push function
        TCP: .....0.. = No Reset
        TCP: ......1. = Synchronize sequence numbers
        TCP: .......0 = No Fin
    TCP: Window = 65535 (0xFFFF)
    TCP: Checksum = 0xA2B8
    TCP: Urgent Pointer = 0 (0x0)
    TCP: Options
        TCP: Maximum Segment Size Option
            TCP: Option Type = Maximum Segment Size
            TCP: Option Length = 4 (0x4)
            TCP: Maximum Segment Size = 1460 (0x5B4)
        TCP: Option Nop = 1 (0x1)
        TCP: Option Nop = 1 (0x1)
        TCP: SACK Permitted Option
            TCP: Option Type = Sack Permitted
            TCP: Option Length = 2 (0x2)

웹서버 ----------------> 클라이언트

HTTP: Response (to client using port 3634)
    HTTP: Data: Number of data bytes remaining = 1460 (0x05B4)
00000: 00 0F EA C0 8C 38 00 08 9F 02 AC 86 08 00 45 00 ..êÀŒ8..Ÿ.¬†..E.
00010: 05 DC EE 90 40 00 78 06 29 D7 D2 76 51 31 C0 A8 .Üî@.x.)×ÒvQ1À¨
00020: 00 64 00 50 0E 32 DA 46 FC AC ED 9D 32 BA 50 10 .d.P.2ÚFü¬í2ºP.
00030: 42 C0 CB CD 00 00 0A 09 2F 2F 66 6F 72 20 64 69 BÀËÍ....//for di
00040: 73 70 6C 61 79 2C 20 77 65 20 6E 65 65 64 20 74 splay, we need t
00050: 6F 20 73 6B 69 70 20 61 66 74 65 72 20 68 74 74 o skip after htt
00060: 70 3A 2F 2F 2C 20 61 6E 64 20 67 6F 20 74 6F 20 p://, and go to
00070: 74 68 65 20 6E 65 78 74 20 73 6C 61 73 68 0D 0A the next slash..
00080: 09 64 69 73 70 6C 61 79 72 65 73 75 6C 74 3D 44 .displayresult=D
00090: 6F 63 55 52 4C 2E 73 75 62 73 74 72 69 6E 67 28 ocURL.substring(
000A0: 70 72 6F 74 6F 63 6F 6C 49 6E 64 65 78 20 2B 20 protocolIndex +
000B0: 33 20 2C 73 65 72 76 65 72 49 6E 64 65 78 29 3B 3 ,serverIndex);
000C0: 0D 0A 0D 0A 09 49 6E 73 65 72 74 45 6C 65 6D 65 .....InsertEleme
000D0: 6E 74 41 6E 63 68 6F 72 28 75 72 6C 72 65 73 75 ntAnchor(urlresu
000E0: 6C 74 2C 20 64 69 73 70 6C 61 79 72 65 73 75 6C lt, displayresul
000F0: 74 29 3B 0D 0A 7D 0D 0A 0D 0A 66 75 6E 63 74 69 t);..}....functi
00100: 6F 6E 20 48 74 6D 6C 45 6E 63 6F 64 65 28 74 65 on HtmlEncode(te
00110: 78 74 29 0D 0A 7B 0D 0A 20 20 20 20 72 65 74 75 xt)..{.. retu
00120: 72 6E 20 74 65 78 74 2E 72 65 70 6C 61 63 65 28 rn text.replace(
00130: 2F 26 2F 67 2C 20 27 26 61 6D 70 27 29 2E 72 65 /&/g, '&amp').re
00140: 70 6C 61 63 65 28 2F 27 2F 67 2C 20 27 26 71 75 place(/'/g, '&qu
00150: 6F 74 3B 27 29 2E 72 65 70 6C 61 63 65 28 2F 3C ot;').replace(/<
00160: 2F 67 2C 20 27 26 6C 74 3B 27 29 2E 72 65 70 6C /g, '&lt;').repl
00170: 61 63 65 28 2F 3E 2F 67 2C 20 27 26 67 74 3B 27 ace(/>/g, '&gt;'
00180: 29 3B 0D 0A 7D 0D 0A 0D 0A 66 75 6E 63 74 69 6F );..}....functio
00190: 6E 20 54 61 67 41 74 74 72 69 62 28 6E 61 6D 65 n TagAttrib(name
001A0: 2C 20 76 61 6C 75 65 29 0D 0A 7B 0D 0A 20 20 20 , value)..{..
001B0: 20 72 65 74 75 72 6E 20 27 20 27 2B 6E 61 6D 65 return ' '+name
001C0: 2B 27 3D 22 27 2B 48 74 6D 6C 45 6E 63 6F 64 65 +'="'+HtmlEncode
001D0: 28 76 61 6C 75 65 29 2B 27 22 27 3B 0D 0A 7D 0D (value)+'"';..}.
001E0: 0A 0D 0A 66 75 6E 63 74 69 6F 6E 20 50 72 69 6E ...function Prin
001F0: 74 54 61 67 28 74 61 67 4E 61 6D 65 2C 20 6E 65 tTag(tagName, ne
00200: 65 64 43 6C 6F 73 65 54 61 67 2C 20 61 74 74 72 edCloseTag, attr
00210: 69 62 2C 20 69 6E 6E 65 72 29 7B 0D 0A 20 20 20 ib, inner){..
00220: 20 64 6F 63 75 6D 65 6E 74 2E 77 72 69 74 65 28 document.write(
00230: 20 27 3C 27 20 2B 20 74 61 67 4E 61 6D 65 20 2B '<' + tagName +
00240: 20 61 74 74 72 69 62 20 2B 20 27 3E 27 20 2B 20 attrib + '>' +
00250: 48 74 6D 6C 45 6E 63 6F 64 65 28 69 6E 6E 65 72 HtmlEncode(inner
00260: 29 20 29 3B 0D 0A 20 20 20 20 69 66 20 28 6E 65 ) );.. if (ne
00270: 65 64 43 6C 6F 73 65 54 61 67 29 20 64 6F 63 75 edCloseTag) docu
00280: 6D 65 6E 74 2E 77 72 69 74 65 28 20 27 3C 2F 27 ment.write( '</'
00290: 20 2B 20 74 61 67 4E 61 6D 65 20 2B 27 3E 27 20 + tagName +'>'
002A0: 29 3B 0D 0A 7D 0D 0A 0D 0A 66 75 6E 63 74 69 6F );..}....functio
002B0: 6E 20 55 52 49 28 68 72 65 66 29 0D 0A 7B 0D 0A n URI(href)..{..
002C0: 20 20 20 20 49 45 56 65 72 20 3D 20 77 69 6E 64 IEVer = wind
002D0: 6F 77 2E 6E 61 76 69 67 61 74 6F 72 2E 61 70 70 ow.navigator.app
002E0: 56 65 72 73 69 6F 6E 3B 0D 0A 20 20 20 20 49 45 Version;.. IE
002F0: 56 65 72 20 3D 20 49 45 56 65 72 2E 73 75 62 73 Ver = IEVer.subs
00300: 74 72 28 20 49 45 56 65 72 2E 69 6E 64 65 78 4F tr( IEVer.indexO
00310: 66 28 27 4D 53 49 45 27 29 20 2B 20 35 2C 20 33 f('MSIE') + 5, 3
00320: 20 29 3B 0D 0A 0D 0A 20 20 20 20 72 65 74 75 72 );.... retur
00330: 6E 20 28 49 45 56 65 72 2E 63 68 61 72 41 74 28 n (IEVer.charAt(
00340: 31 29 3D 3D 27 2E 27 20 26 26 20 49 45 56 65 72 1)=='.' && IEVer
00350: 20 3E 3D 20 27 35 2E 35 27 29 20 3F 0D 0A 20 20 >= '5.5') ?..
00360: 20 20 20 20 20 20 65 6E 63 6F 64 65 55 52 49 28 encodeURI(
00370: 68 72 65 66 29 20 3A 0D 0A 20 20 20 20 20 20 20 href) :..
00380: 20 65 73 63 61 70 65 28 68 72 65 66 29 2E 72 65 escape(href).re
00390: 70 6C 61 63 65 28 2F 25 33 41 2F 67 2C 20 27 3A place(/%3A/g, ':
003A0: 27 29 2E 72 65 70 6C 61 63 65 28 2F 25 33 42 2F ').replace(/%3B/
003B0: 67 2C 20 27 3B 27 29 3B 0D 0A 7D 0D 0A 0D 0A 66 g, ';');..}....f
003C0: 75 6E 63 74 69 6F 6E 20 49 6E 73 65 72 74 45 6C unction InsertEl
003D0: 65 6D 65 6E 74 41 6E 63 68 6F 72 28 68 72 65 66 ementAnchor(href
003E0: 2C 20 74 65 78 74 29 0D 0A 7B 0D 0A 20 20 20 20 , text)..{..
003F0: 50 72 69 6E 74 54 61 67 28 27 41 27 2C 20 74 72 PrintTag('A', tr
00400: 75 65 2C 20 54 61 67 41 74 74 72 69 62 28 27 48 ue, TagAttrib('H
00410: 52 45 46 27 2C 20 55 52 49 28 68 72 65 66 29 29 REF', URI(href))
00420: 2C 20 74 65 78 74 29 3B 0D 0A 7D 0D 0A 0D 0A 2F , text);..}..../
00430: 2F 2D 2D 3E 0D 0A 3C 2F 73 63 72 69 70 74 3E 0D /-->..</script>.
00440: 0A 0D 0A 3C 62 6F 64 79 20 62 67 63 6F 6C 6F 72 ...<body bgcolor
00450: 3D 22 46 46 46 46 46 46 22 3E 0D 0A 0D 0A 3C 74 ="FFFFFF">....<t
00460: 61 62 6C 65 20 77 69 64 74 68 3D 22 34 31 30 22 able width="410"
00470: 20 63 65 6C 6C 70 61 64 64 69 6E 67 3D 22 33 22 cellpadding="3"
00480: 20 63 65 6C 6C 73 70 61 63 69 6E 67 3D 22 35 22 cellspacing="5"
00490: 3E 0D 0A 0D 0A 20 20 3C 74 72 3E 0D 0A 20 20 20 >.... <tr>..
004A0: 20 3C 74 64 20 61 6C 69 67 6E 3D 22 6C 65 66 74 <td align="left
004B0: 22 20 76 61 6C 69 67 6E 3D 22 6D 69 64 64 6C 65 " valign="middle
004C0: 22 20 77 69 64 74 68 3D 22 33 36 30 22 3E 0D 0A " width="360">..
004D0: 09 3C 68 31 20 73 74 79 6C 65 3D 22 43 4F 4C 4F .<h1 style="COLO
004E0: 52 3A 30 30 30 30 30 30 3B 20 46 4F 4E 54 3A 20 R:000000; FONT:
004F0: 31 33 70 74 2F 31 35 70 74 20 76 65 72 64 61 6E 13pt/15pt verdan
00500: 61 22 3E 3C 21 2D 2D 50 72 6F 62 6C 65 6D 2D 2D a"><!--Problem--
00510: 3E 20 C0 CC 20 C6 E4 C0 CC C1 F6 B8 A6 20 C3 A3 > &Agrave;&Igrave; Æ&auml;&Agrave;&Igrave;&Aacute;&ouml;¸&brvbar; &Atilde;&pound;
00520: C0 BB 20 BC F6 20 BE F8 BD C0 B4 CF B4 D9 2E 3C &Agrave;&raquo; ¼&ouml; ¾ø½&Agrave;´&Iuml;´&Ugrave;.<
00530: 2F 68 31 3E 0D 0A 20 20 20 20 3C 2F 74 64 3E 0D /h1>.. </td>.
00540: 0A 20 20 3C 2F 74 72 3E 0D 0A 0D 0A 20 20 3C 74 . </tr>.... <t
00550: 72 3E 0D 0A 20 20 20 20 3C 74 64 20 77 69 64 74 r>.. <td widt
00560: 68 3D 22 34 30 30 22 20 63 6F 6C 73 70 61 6E 3D h="400" colspan=
00570: 22 32 22 3E 20 3C 66 6F 6E 74 20 73 74 79 6C 65 "2"> <font style
00580: 3D 22 43 4F 4C 4F 52 3A 30 30 30 30 30 30 3B 20 ="COLOR:000000;
00590: 46 4F 4E 54 3A 20 39 70 74 2F 31 31 70 74 20 B1 FONT: 9pt/11pt ±
005A0: BC B8 B2 22 3E C3 A3 B0 ED 20 C0 D6 B4 C2 20 C6 ¼¸²">&Atilde;&pound;°&iacute; &Agrave;&Ouml;´&Acirc; Æ
005B0: E4 C0 CC C1 F6 B0 A1 20 BB E8 C1 A6 B5 C7 BE FA &auml;&Agrave;&Igrave;&Aacute;&ouml;°¡ &raquo;&egrave;&Aacute;&brvbar;&micro;&Ccedil;¾&uacute;
005C0: B0 C5 B3 AA 20 C0 CC B8 A7 C0 CC 20 BA AF B0 E6 °&Aring;³ª &Agrave;&Igrave;¸§&Agrave;&Igrave; º&macr;°æ
005D0: B5 C7 BE FA B0 C5 B3 AA 20 C0 CF BD C3 C0 FB C0 &micro;&Ccedil;¾&uacute;°&Aring;³ª &Agrave;&Iuml;½&Atilde;&Agrave;&ucirc;&Agrave;
005E0: B8 B7 CE 20 BB E7 BF EB C7 D2 ¸·&Icirc; &raquo;&ccedil;¿&euml;&Ccedil;&Ograve;








[최초 등록일: ]
[최종 수정일: 7/22/2005]


비밀번호

댓글 작성자
 



2005-08-16 11시14분
ko-KR 관련 리소스를 찾는 요청을 보내서 그런 겁니다.
폼 로드시에 관련 리소스를 찾지 않도록 언어속성을 "중립" 으로 설정하십시오.

techsharer
2005-08-18 01시51분
[테드] 감사합니다.
헌데,
언어속성을 중립으로 할때 웹폼페이지의 culture를 변경해야 하는지, 윈폼(컨트롤)의 culture를 변경해야 하는지 모르겠네요.
그리고 중립이라는 속성은 지정하지 않는다는 의미인지요...
죄송한데 한번만더 도움을...
[guest]
2005-08-18 02시12분
[테드] 중립이란 의미를 찾아봤는데 국가지정을 하지 않을 경우(예를 들면 ko-KR은 고정, ko는 중립) 중립이 된다는 것은 알겠는데 웹폼페이지의 culture를 ko로 지정한다거나 web.config의 globalization의 culture를 ko로 지정한다거나 하는 것은 지원하지 않는군요. 즉, 고정언어속성만 지정할 수 있게끔 되어 있는것 같습니다.
기본값("")또한 고정언어속성이라 중립으로 지정할 수 있는 방법이 있는 것인지도 궁금하네요.
[guest]

... 91  [92]  93  94  95  96  97 
NoWriterDateCnt.TitleFile(s)
157이용휘4/20/20059261w3ip를 통해서 윈도우 미디어 화을을 올려놓을 서버..
158정성태4/20/20059697    답변글 [답변]: w3ip를 통해서 윈도우 미디어 화을을 올려놓을 서버..
155최성우4/18/200511366[질문(--),(__)]BHO로 자동 로그인 기능 구현.. 패스워드를 읽어오지를 못합니다.
156정성태4/19/200510076    답변글 [답변]: [질문(--),(__)]BHO로 자동 로그인 기능 구현.. 패스워드를 읽어오지를 못합니다.
161최성우4/21/200511164        답변글 [답변]: [답변]: [질문(--),(__)]BHO로 자동 로그인 기능 구현.. 패스워드를 읽어오지를 못합니다.
164정성태4/22/20059977            답변글 [답변]: [답변]: [답변]: [질문(--),(__)]BHO로 자동 로그인 기능 구현.. 패스워드를 읽어오지를 못합니다.
176최성우5/3/200510326                답변글 [답변]: [답변]: [답변]: [답변]: [질문(--),(__)]BHO로 자동 로그인 기능 구현.. 패스워드를 읽어오지를 못합니다.
146안연준4/14/200511042컴포넌트 안에 컴포넌트 삽입? 헐 ! -_-;;
147정성태4/14/20059904    답변글 [답변]: 컴포넌트 안에 컴포넌트 삽입? 헐 ! -_-;;
148안연준4/15/200510284        답변글 [답변]: [답변]: 컴포넌트 안에 컴포넌트 삽입? 헐 ! -_-;; [2]
142김용국4/13/200510088SmartClient 방식에서 이미지(바이너리)파일을 DataBased에 저장하기위한 방안에 대한 문의
143정성태4/14/20059690    답변글 [답변]: SmartClient 방식에서 이미지(바이너리)파일을 DataBased에 저장하기위한 방안에 대한 문의
141김종욱4/12/200510169웹하드 시스템을 ACTIVEX 로 짜고 있습니다
144정성태4/14/20059728    답변글 [답변]: 웹하드 시스템을 ACTIVEX 로 짜고 있습니다
149김종욱4/15/20059617        답변글 [답변]: [답변]: 웹하드 시스템을 ACTIVEX 로 짜고 있습니다 [1]
150정성태4/15/20059777            답변글 [답변]: [답변]: [답변]: 웹하드 시스템을 ACTIVEX 로 짜고 있습니다 [1]
151김종욱4/16/200510070                답변글 [답변]: [답변]: [답변]: [답변]: 웹하드 시스템을 ACTIVEX 로 짜고 있습니다
152정성태4/16/20059882                    답변글 [답변]: [답변]: [답변]: [답변]: [답변]: 웹하드 시스템을 ACTIVEX 로 짜고 있습니다
153김종욱4/18/200511599                        답변글 [답변]: [답변]: [답변]: [답변]: [답변]: [답변]: 웹하드 시스템을 ACTIVEX 로 짜고 있습니다
154정성태4/18/200510871                            답변글 [답변]: [답변]: [답변]: [답변]: [답변]: [답변]: [답변]: 웹하드 시스템을 ACTIVEX 로 짜고 있습니다 [3]
140안연준4/11/20059604Smart Client 에서 오프라인 글 중...의문점
145정성태4/14/20059454    답변글 [답변]: Smart Client 에서 오프라인 글 중...의문점 [1]
134김용국4/6/200514085c# .Net 에 대한 문의좀 ^^ [WinForm 에서 UserControl로 작성된 폼을 호출하려는데....]
135정성태4/6/200512136    답변글 [답변]: c# .Net 에 대한 문의좀 ^^ [WinForm 에서 UserControl로 작성된 폼을 호출하려는데....]
136김용국4/6/200510945        답변글 [답변]: [답변]: c# .Net 에 대한 문의좀 ^^ [WinForm 에서 UserControl로 작성된 폼을 호출하려는데....]
137정성태4/7/200510077            답변글 [답변]: [답변]: [답변]: c# .Net 에 대한 문의좀 ^^ [WinForm 에서 UserControl로 작성된 폼을 호출하려는데....]
... 91  [92]  93  94  95  96  97