You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(4) |
Sep
|
Oct
|
Nov
(1) |
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
(3) |
Jul
|
Aug
(7) |
Sep
|
Oct
(2) |
Nov
(1) |
Dec
(7) |
2006 |
Jan
(1) |
Feb
(2) |
Mar
(3) |
Apr
(3) |
May
(5) |
Jun
(1) |
Jul
|
Aug
(2) |
Sep
(4) |
Oct
(17) |
Nov
(18) |
Dec
(1) |
2007 |
Jan
|
Feb
|
Mar
(8) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(2) |
Nov
(6) |
Dec
(1) |
2008 |
Jan
(17) |
Feb
(20) |
Mar
(8) |
Apr
(8) |
May
(10) |
Jun
(4) |
Jul
(5) |
Aug
(6) |
Sep
(9) |
Oct
(19) |
Nov
(4) |
Dec
(35) |
2009 |
Jan
(40) |
Feb
(16) |
Mar
(7) |
Apr
(6) |
May
|
Jun
(5) |
Jul
(5) |
Aug
(4) |
Sep
(1) |
Oct
(2) |
Nov
(15) |
Dec
(15) |
2010 |
Jan
(5) |
Feb
(20) |
Mar
(12) |
Apr
|
May
(2) |
Jun
(4) |
Jul
|
Aug
(11) |
Sep
(1) |
Oct
(1) |
Nov
(3) |
Dec
|
2011 |
Jan
(8) |
Feb
(19) |
Mar
|
Apr
(12) |
May
(7) |
Jun
(8) |
Jul
|
Aug
(1) |
Sep
(21) |
Oct
(7) |
Nov
(4) |
Dec
|
2012 |
Jan
(3) |
Feb
(25) |
Mar
(8) |
Apr
(10) |
May
|
Jun
(14) |
Jul
(5) |
Aug
(12) |
Sep
(3) |
Oct
(14) |
Nov
|
Dec
|
2013 |
Jan
(10) |
Feb
(4) |
Mar
(10) |
Apr
(14) |
May
(6) |
Jun
(13) |
Jul
(37) |
Aug
(20) |
Sep
(11) |
Oct
(1) |
Nov
(34) |
Dec
|
2014 |
Jan
(8) |
Feb
(26) |
Mar
(24) |
Apr
(5) |
May
|
Jun
|
Jul
|
Aug
(4) |
Sep
(28) |
Oct
(4) |
Nov
(4) |
Dec
(2) |
2015 |
Jan
|
Feb
|
Mar
(2) |
Apr
|
May
|
Jun
(13) |
Jul
|
Aug
(3) |
Sep
(8) |
Oct
(11) |
Nov
(16) |
Dec
|
2016 |
Jan
|
Feb
(6) |
Mar
|
Apr
(9) |
May
(23) |
Jun
(3) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2017 |
Jan
|
Feb
|
Mar
|
Apr
(7) |
May
(3) |
Jun
|
Jul
(3) |
Aug
|
Sep
(8) |
Oct
|
Nov
|
Dec
(3) |
2018 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2019 |
Jan
(4) |
Feb
|
Mar
(2) |
Apr
(6) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2020 |
Jan
|
Feb
|
Mar
|
Apr
(31) |
May
|
Jun
|
Jul
|
Aug
(7) |
Sep
|
Oct
|
Nov
|
Dec
(1) |
2021 |
Jan
(2) |
Feb
(2) |
Mar
(5) |
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2022 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
|
|
|
|
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
11
|
12
(1) |
13
(1) |
14
(1) |
15
|
16
|
17
|
18
|
19
(1) |
20
|
21
|
22
|
23
|
24
|
25
|
26
|
27
|
28
|
29
|
30
|
31
|
|
|
|
|
|
|
From: Stephen S. <rad...@gm...> - 2014-08-19 13:26:02
|
Hm, well I can't think of an easy way to do that with the current API. It could be something to consider for a future version of liblo. Currently the maximum message size is a global compile-time variable. It could potentially be changed to a run-time global, but some of the buffering code would definitely need to be changed so as to avoid large stack allocations. Additionally there is the security consideration that an attacker could cause problems by sending a never-ending message stream. Steve On Thu, Aug 14, 2014 at 5:34 PM, <to...@tr...> wrote: > On Wed, August 13, 2014 23:57, Stephen Sinclair wrote: >> On Tue, Aug 12, 2014 at 8:12 PM, <to...@tr...> wrote: >> >>> >>> Hi, >>> >>> >>> i use liblo for OSC for some time and it works very well. >>> >>> Now i start looking into sending messages via TCP. I couldn't send >>> larger messages than around 32KB. Looking at lo/lomacros.h revealed >>> >>> // \brief Maximum length of UDP messages in bytes >>> #define LO_MAX_MSG_SIZE 32768 >>> >>> >>> And in src/send.c: >>> >>> >>> if (data_len > LO_MAX_MSG_SIZE) { a->errnum = 99; a->errstr = "Attempted >>> to send message in excess of maximum " "message size"; >>> return -1; } >>> >>> >>> I wondered if it would be possible to not limit the size of TCP >>> messages so it would be possible to send large messages. >>> >>> #define LO_MAX_MSG_SIZE_TCP 100000000 >>> >>> >>> if (a->protocol == LO_UDP && data_len > LO_MAX_MSG_SIZE) { a->errnum = >>> 99; >>> a->errstr = "Attempted to send message in excess of maximum " "message >>> size"; return -1; } >>> else if (a->protocol == LO_TCP && data_len > LO_MAX_MSG_SIZE_TCP) { >>> a->errnum = 99; a->errstr = "Attempted to send message in excess of >>> maximum " "message size"; >>> return -1; } >>> >>> >>> A small test tool seems to happily send a message exceeding the limit >>> set for UDP messages (netcal -l on the receiver side). >>> >>> Does this make any sense or did i miss something? Thanks >>> >> >> Hi Tom, >> >> >> It does make sense. I'm surprised there's ever a need for OSC >> messages greater than 32k, what are you sending? in any case, in principle >> there should be no real limit for TCP. The limit just simplifies much of >> the programming, and I'd have to check over the code again to be sure it >> doesn't cause any ill effects to increase the limit. Increasing this >> variable likely causes liblo to allocate much larger buffers, so I'm not >> sure that's an appropriate fix, even if it works. >> >> Steve >> >> > > Hello Steve, > > thanks for the clarification. It's indeed not a regular case to send > messages > 32k. However if this limit is gone for TCP, other usecases for > OSC are thinkable, using it as an application level packager for data of > any size (i.e. in a blob) using the arguments as metadata. > Some tests have shown that the connection is more reliable when sending > large chunks compared to many small chunks when stressing the system with > multiple network plug outs. Plugging out a cable while a large OSC TCP > transfer is going on behaves differently when doing the same while 1000s > of OSC TCP messages arrive. I can't tell why yet but with large chunks the > recovery and low-level TCP handling seems more reliable. (This is how i > came to change the limit in the first place). Of course large chunks bring > latency but that must not be an issue for every usecase. > It's a great library either way. It there are no side-effects having the > limit for TCP extended would be wishful. > > Cheers, > Tom > > > > ------------------------------------------------------------------------------ > _______________________________________________ > liblo-devel mailing list > lib...@li... > https://lists.sourceforge.net/lists/listinfo/liblo-devel |
From: <to...@tr...> - 2014-08-14 15:35:27
|
On Wed, August 13, 2014 23:57, Stephen Sinclair wrote: > On Tue, Aug 12, 2014 at 8:12 PM, <to...@tr...> wrote: > >> >> Hi, >> >> >> i use liblo for OSC for some time and it works very well. >> >> Now i start looking into sending messages via TCP. I couldn't send >> larger messages than around 32KB. Looking at lo/lomacros.h revealed >> >> // \brief Maximum length of UDP messages in bytes >> #define LO_MAX_MSG_SIZE 32768 >> >> >> And in src/send.c: >> >> >> if (data_len > LO_MAX_MSG_SIZE) { a->errnum = 99; a->errstr = "Attempted >> to send message in excess of maximum " "message size"; >> return -1; } >> >> >> I wondered if it would be possible to not limit the size of TCP >> messages so it would be possible to send large messages. >> >> #define LO_MAX_MSG_SIZE_TCP 100000000 >> >> >> if (a->protocol == LO_UDP && data_len > LO_MAX_MSG_SIZE) { a->errnum = >> 99; >> a->errstr = "Attempted to send message in excess of maximum " "message >> size"; return -1; } >> else if (a->protocol == LO_TCP && data_len > LO_MAX_MSG_SIZE_TCP) { >> a->errnum = 99; a->errstr = "Attempted to send message in excess of >> maximum " "message size"; >> return -1; } >> >> >> A small test tool seems to happily send a message exceeding the limit >> set for UDP messages (netcal -l on the receiver side). >> >> Does this make any sense or did i miss something? Thanks >> > > Hi Tom, > > > It does make sense. I'm surprised there's ever a need for OSC > messages greater than 32k, what are you sending? in any case, in principle > there should be no real limit for TCP. The limit just simplifies much of > the programming, and I'd have to check over the code again to be sure it > doesn't cause any ill effects to increase the limit. Increasing this > variable likely causes liblo to allocate much larger buffers, so I'm not > sure that's an appropriate fix, even if it works. > > Steve > > Hello Steve, thanks for the clarification. It's indeed not a regular case to send messages > 32k. However if this limit is gone for TCP, other usecases for OSC are thinkable, using it as an application level packager for data of any size (i.e. in a blob) using the arguments as metadata. Some tests have shown that the connection is more reliable when sending large chunks compared to many small chunks when stressing the system with multiple network plug outs. Plugging out a cable while a large OSC TCP transfer is going on behaves differently when doing the same while 1000s of OSC TCP messages arrive. I can't tell why yet but with large chunks the recovery and low-level TCP handling seems more reliable. (This is how i came to change the limit in the first place). Of course large chunks bring latency but that must not be an issue for every usecase. It's a great library either way. It there are no side-effects having the limit for TCP extended would be wishful. Cheers, Tom |
From: Stephen S. <rad...@gm...> - 2014-08-13 21:57:27
|
On Tue, Aug 12, 2014 at 8:12 PM, <to...@tr...> wrote: > > Hi, > > i use liblo for OSC for some time and it works very well. > > Now i start looking into sending messages via TCP. I couldn't send larger > messages than around 32KB. Looking at lo/lomacros.h revealed > > // \brief Maximum length of UDP messages in bytes > #define LO_MAX_MSG_SIZE 32768 > > And in src/send.c: > > if (data_len > LO_MAX_MSG_SIZE) { > a->errnum = 99; > a->errstr = "Attempted to send message in excess of maximum " > "message size"; > return -1; > } > > I wondered if it would be possible to not limit the size of TCP messages > so it would be possible to send large messages. > > #define LO_MAX_MSG_SIZE_TCP 100000000 > > if (a->protocol == LO_UDP && data_len > LO_MAX_MSG_SIZE) { > a->errnum = 99; > a->errstr = "Attempted to send message in excess of maximum " > "message size"; > return -1; > } > else if (a->protocol == LO_TCP && data_len > LO_MAX_MSG_SIZE_TCP) { > a->errnum = 99; > a->errstr = "Attempted to send message in excess of maximum " > "message size"; > return -1; > } > > A small test tool seems to happily send a message exceeding the limit set > for UDP messages (netcal -l on the receiver side). > > Does this make any sense or did i miss something? Thanks Hi Tom, It does make sense. I'm surprised there's ever a need for OSC messages greater than 32k, what are you sending? in any case, in principle there should be no real limit for TCP. The limit just simplifies much of the programming, and I'd have to check over the code again to be sure it doesn't cause any ill effects to increase the limit. Increasing this variable likely causes liblo to allocate much larger buffers, so I'm not sure that's an appropriate fix, even if it works. Steve |
From: <to...@tr...> - 2014-08-12 18:56:24
|
Hi, i use liblo for OSC for some time and it works very well. Now i start looking into sending messages via TCP. I couldn't send larger messages than around 32KB. Looking at lo/lomacros.h revealed // \brief Maximum length of UDP messages in bytes #define LO_MAX_MSG_SIZE 32768 And in src/send.c: if (data_len > LO_MAX_MSG_SIZE) { a->errnum = 99; a->errstr = "Attempted to send message in excess of maximum " "message size"; return -1; } I wondered if it would be possible to not limit the size of TCP messages so it would be possible to send large messages. #define LO_MAX_MSG_SIZE_TCP 100000000 if (a->protocol == LO_UDP && data_len > LO_MAX_MSG_SIZE) { a->errnum = 99; a->errstr = "Attempted to send message in excess of maximum " "message size"; return -1; } else if (a->protocol == LO_TCP && data_len > LO_MAX_MSG_SIZE_TCP) { a->errnum = 99; a->errstr = "Attempted to send message in excess of maximum " "message size"; return -1; } A small test tool seems to happily send a message exceeding the limit set for UDP messages (netcal -l on the receiver side). Does this make any sense or did i miss something? Thanks Best regards, Thomas |