Microsoft MVP성태의 닷넷 이야기
스마트 클라이언트에서 원치 않는 패킷 송수신 문제... [링크 복사], [링크+제목 복사],
조회: 7830
글쓴 사람
테드 (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]

... [76]  77  78  79  80  81  82  83  84  85  86  87  88  89  90  ...
NoWriterDateCnt.TitleFile(s)
589김희택3/2/20078936리소스 추가 방법에 대한 아티클을 보던중에 질문요... [1]파일 다운로드1
588이성진2/24/200711059웹 -> 스마트클라이언트 -> 웹서비스 의 세션 공유 방법 ? [1]
583김영민2/22/20079525Vista에서 "관리자 권한으로 실행"을 통해 실행한 프로세스의 동작
584정성태2/22/200710925    답변글 [답변]: Vista에서 "관리자 권한으로 실행"을 통해 실행한 프로세스의 동작
582한귀순2/22/20079602sqlhelper 의 updatedataset
585정성태2/23/20078895    답변글 [답변]: sqlhelper 의 updatedataset [1]
579futu...2/16/200710374VS2005의 스마트 클라이언트에서 웹브라우저 예제 질문입니다. [1]
578정해봉2/16/20079602IE Embeded Assambly 방식에서 CAS 설정 방법 [1]
575박성민2/12/200710117COM에 데이터 보내기 질문입니다. [1]
571엔틱스2/7/200710810그냥... 질문은 아닙니다만... [2]
5682/6/20078237이런 오류 화면을 어떻게 찾아봐야 - 알아봐야 - 하는지요?파일 다운로드1
569정성태2/6/20079384    답변글 [답변]: 이런 오류 화면을 어떻게 찾아봐야 - 알아봐야 - 하는지요? [1]
570정성태2/6/20079507        답변글 [답변]: [답변]: 이런 오류 화면을 어떻게 찾아봐야 - 알아봐야 - 하는지요?
5732/8/20078420            답변글 [답변]: [답변]: [답변]: 이런 오류 화면을 어떻게 찾아봐야 - 알아봐야 - 하는지요? [1]파일 다운로드1
565한귀순2/5/20079052typed dataset 의 유용성
566정성태2/6/200710662    답변글 [답변]: typed dataset의 유용성 [1]
564정민영2/5/20079211혹시 이런 경우 보신적 있으신가 궁금합니다..^^; [2]
563창민이2/2/20079356Visual C++ COM Objects Returning Recordsets 사용에 대해.. [3]
562현석1/29/20079216C# 스마트응용장치에서 아이콘 움직이게하는거 질문요 ^^ [1]파일 다운로드1
559초보1/27/200710585급 질문 입니다. visual studio 자동 종료에 대한 질문입니다. [2]
558즈믄1/26/200710543.Net Framework v2.0에서 Winform의 Panel에 Excel파일 보여주기 [2]
556정재우1/26/200710285vista에서 smartclient의 System.Security.PermissionsRegistryPermission 에러 [1]
555dev....1/25/2007119912005 WebBrowser내에서 팝업 처리 문제 관련 질문입니다.
561정성태1/29/200714858    답변글 [답변]: 2005 WebBrowser 내에서 팝업 처리 문제 관련 질문입니다.
554sky1/23/200710220<급질문> interop 를 사용함에 있어 [2]
557sky1/26/20078588    답변글 [답변]: <급질문> interop 를 사용함에 있어
... [76]  77  78  79  80  81  82  83  84  85  86  87  88  89  90  ...